{-# OPTIONS_GHC -w #-}
{-# OPTIONS -fglasgow-exts -cpp #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE ViewPatterns #-}
module TxsHappy

( txsParser                             -- exporting
, constdefParser
, funcdefParser
, bexprParser
, chandeclsParser
, prefoffsParser
, vexprParser
, vardeclsParser
, valdefsParser
)

where

import TxsAlex                          -- importing
                                        -- data Token(..), AlexPosn(..)
                                        -- txsLexer :: String --> [Token]
import TxsDefs                          -- types for parseVal main attribute
import ChanId
import CnectId
import CstrId
import FuncId
import GoalId
import MapperId
import ModelId
import ProcId
import PurpId
import SortId
import StatId
import VarId
import FuncTable
import TxsUtils                         -- some utilities on TxsDefs 
import TxsShow                          -- pretty pshow for error messages
import StdTDefs                         -- predefined, standard Txs data types

import qualified Sigs

import qualified Data.List   as List
import qualified Data.Map    as Map
import qualified Data.Set    as Set
import qualified Data.String.Utils as Utils
import Data.Monoid
import qualified Data.Array as Happy_Data_Array
import qualified GHC.Exts as Happy_GHC_Exts
import Control.Applicative(Applicative(..))
import Control.Monad (ap)

-- parser produced by Happy Version 1.19.5

newtype HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117 = HappyAbsSyn HappyAny
#if __GLASGOW_HASKELL__ >= 607
type HappyAny = Happy_GHC_Exts.Any
#else
type HappyAny = forall a . a
#endif
happyIn12 :: t12 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn12 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn12 #-}
happyOut12 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t12
happyOut12 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut12 #-}
happyIn13 :: t13 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn13 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn13 #-}
happyOut13 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t13
happyOut13 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut13 #-}
happyIn14 :: t14 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn14 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn14 #-}
happyOut14 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t14
happyOut14 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut14 #-}
happyIn15 :: t15 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn15 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn15 #-}
happyOut15 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t15
happyOut15 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut15 #-}
happyIn16 :: t16 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn16 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn16 #-}
happyOut16 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t16
happyOut16 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut16 #-}
happyIn17 :: t17 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn17 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn17 #-}
happyOut17 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t17
happyOut17 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut17 #-}
happyIn18 :: t18 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn18 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn18 #-}
happyOut18 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t18
happyOut18 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut18 #-}
happyIn19 :: t19 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn19 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn19 #-}
happyOut19 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t19
happyOut19 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut19 #-}
happyIn20 :: t20 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn20 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn20 #-}
happyOut20 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t20
happyOut20 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut20 #-}
happyIn21 :: t21 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn21 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn21 #-}
happyOut21 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t21
happyOut21 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut21 #-}
happyIn22 :: t22 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn22 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn22 #-}
happyOut22 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t22
happyOut22 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut22 #-}
happyIn23 :: t23 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn23 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn23 #-}
happyOut23 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t23
happyOut23 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut23 #-}
happyIn24 :: t24 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn24 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn24 #-}
happyOut24 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t24
happyOut24 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut24 #-}
happyIn25 :: t25 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn25 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn25 #-}
happyOut25 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t25
happyOut25 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut25 #-}
happyIn26 :: t26 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn26 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn26 #-}
happyOut26 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t26
happyOut26 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut26 #-}
happyIn27 :: t27 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn27 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn27 #-}
happyOut27 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t27
happyOut27 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut27 #-}
happyIn28 :: t28 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn28 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn28 #-}
happyOut28 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t28
happyOut28 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut28 #-}
happyIn29 :: t29 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn29 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn29 #-}
happyOut29 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t29
happyOut29 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut29 #-}
happyIn30 :: t30 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn30 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn30 #-}
happyOut30 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t30
happyOut30 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut30 #-}
happyIn31 :: t31 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn31 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn31 #-}
happyOut31 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t31
happyOut31 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut31 #-}
happyIn32 :: t32 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn32 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn32 #-}
happyOut32 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t32
happyOut32 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut32 #-}
happyIn33 :: t33 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn33 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn33 #-}
happyOut33 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t33
happyOut33 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut33 #-}
happyIn34 :: t34 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn34 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn34 #-}
happyOut34 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t34
happyOut34 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut34 #-}
happyIn35 :: t35 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn35 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn35 #-}
happyOut35 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t35
happyOut35 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut35 #-}
happyIn36 :: t36 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn36 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn36 #-}
happyOut36 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t36
happyOut36 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut36 #-}
happyIn37 :: t37 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn37 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn37 #-}
happyOut37 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t37
happyOut37 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut37 #-}
happyIn38 :: t38 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn38 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn38 #-}
happyOut38 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t38
happyOut38 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut38 #-}
happyIn39 :: t39 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn39 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn39 #-}
happyOut39 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t39
happyOut39 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut39 #-}
happyIn40 :: t40 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn40 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn40 #-}
happyOut40 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t40
happyOut40 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut40 #-}
happyIn41 :: t41 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn41 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn41 #-}
happyOut41 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t41
happyOut41 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut41 #-}
happyIn42 :: t42 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn42 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn42 #-}
happyOut42 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t42
happyOut42 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut42 #-}
happyIn43 :: t43 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn43 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn43 #-}
happyOut43 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t43
happyOut43 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut43 #-}
happyIn44 :: t44 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn44 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn44 #-}
happyOut44 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t44
happyOut44 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut44 #-}
happyIn45 :: t45 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn45 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn45 #-}
happyOut45 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t45
happyOut45 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut45 #-}
happyIn46 :: t46 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn46 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn46 #-}
happyOut46 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t46
happyOut46 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut46 #-}
happyIn47 :: t47 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn47 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn47 #-}
happyOut47 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t47
happyOut47 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut47 #-}
happyIn48 :: t48 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn48 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn48 #-}
happyOut48 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t48
happyOut48 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut48 #-}
happyIn49 :: t49 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn49 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn49 #-}
happyOut49 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t49
happyOut49 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut49 #-}
happyIn50 :: t50 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn50 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn50 #-}
happyOut50 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t50
happyOut50 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut50 #-}
happyIn51 :: t51 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn51 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn51 #-}
happyOut51 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t51
happyOut51 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut51 #-}
happyIn52 :: t52 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn52 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn52 #-}
happyOut52 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t52
happyOut52 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut52 #-}
happyIn53 :: t53 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn53 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn53 #-}
happyOut53 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t53
happyOut53 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut53 #-}
happyIn54 :: t54 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn54 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn54 #-}
happyOut54 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t54
happyOut54 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut54 #-}
happyIn55 :: t55 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn55 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn55 #-}
happyOut55 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t55
happyOut55 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut55 #-}
happyIn56 :: t56 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn56 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn56 #-}
happyOut56 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t56
happyOut56 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut56 #-}
happyIn57 :: t57 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn57 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn57 #-}
happyOut57 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t57
happyOut57 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut57 #-}
happyIn58 :: t58 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn58 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn58 #-}
happyOut58 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t58
happyOut58 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut58 #-}
happyIn59 :: t59 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn59 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn59 #-}
happyOut59 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t59
happyOut59 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut59 #-}
happyIn60 :: t60 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn60 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn60 #-}
happyOut60 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t60
happyOut60 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut60 #-}
happyIn61 :: t61 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn61 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn61 #-}
happyOut61 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t61
happyOut61 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut61 #-}
happyIn62 :: t62 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn62 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn62 #-}
happyOut62 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t62
happyOut62 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut62 #-}
happyIn63 :: t63 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn63 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn63 #-}
happyOut63 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t63
happyOut63 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut63 #-}
happyIn64 :: t64 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn64 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn64 #-}
happyOut64 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t64
happyOut64 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut64 #-}
happyIn65 :: t65 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn65 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn65 #-}
happyOut65 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t65
happyOut65 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut65 #-}
happyIn66 :: t66 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn66 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn66 #-}
happyOut66 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t66
happyOut66 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut66 #-}
happyIn67 :: t67 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn67 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn67 #-}
happyOut67 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t67
happyOut67 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut67 #-}
happyIn68 :: t68 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn68 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn68 #-}
happyOut68 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t68
happyOut68 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut68 #-}
happyIn69 :: t69 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn69 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn69 #-}
happyOut69 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t69
happyOut69 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut69 #-}
happyIn70 :: t70 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn70 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn70 #-}
happyOut70 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t70
happyOut70 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut70 #-}
happyIn71 :: t71 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn71 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn71 #-}
happyOut71 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t71
happyOut71 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut71 #-}
happyIn72 :: t72 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn72 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn72 #-}
happyOut72 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t72
happyOut72 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut72 #-}
happyIn73 :: t73 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn73 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn73 #-}
happyOut73 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t73
happyOut73 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut73 #-}
happyIn74 :: t74 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn74 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn74 #-}
happyOut74 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t74
happyOut74 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut74 #-}
happyIn75 :: t75 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn75 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn75 #-}
happyOut75 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t75
happyOut75 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut75 #-}
happyIn76 :: t76 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn76 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn76 #-}
happyOut76 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t76
happyOut76 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut76 #-}
happyIn77 :: t77 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn77 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn77 #-}
happyOut77 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t77
happyOut77 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut77 #-}
happyIn78 :: t78 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn78 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn78 #-}
happyOut78 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t78
happyOut78 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut78 #-}
happyIn79 :: t79 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn79 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn79 #-}
happyOut79 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t79
happyOut79 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut79 #-}
happyIn80 :: t80 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn80 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn80 #-}
happyOut80 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t80
happyOut80 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut80 #-}
happyIn81 :: t81 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn81 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn81 #-}
happyOut81 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t81
happyOut81 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut81 #-}
happyIn82 :: t82 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn82 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn82 #-}
happyOut82 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t82
happyOut82 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut82 #-}
happyIn83 :: t83 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn83 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn83 #-}
happyOut83 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t83
happyOut83 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut83 #-}
happyIn84 :: t84 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn84 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn84 #-}
happyOut84 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t84
happyOut84 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut84 #-}
happyIn85 :: t85 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn85 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn85 #-}
happyOut85 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t85
happyOut85 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut85 #-}
happyIn86 :: t86 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn86 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn86 #-}
happyOut86 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t86
happyOut86 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut86 #-}
happyIn87 :: t87 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn87 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn87 #-}
happyOut87 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t87
happyOut87 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut87 #-}
happyIn88 :: t88 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn88 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn88 #-}
happyOut88 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t88
happyOut88 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut88 #-}
happyIn89 :: t89 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn89 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn89 #-}
happyOut89 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t89
happyOut89 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut89 #-}
happyIn90 :: t90 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn90 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn90 #-}
happyOut90 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t90
happyOut90 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut90 #-}
happyIn91 :: t91 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn91 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn91 #-}
happyOut91 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t91
happyOut91 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut91 #-}
happyIn92 :: t92 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn92 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn92 #-}
happyOut92 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t92
happyOut92 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut92 #-}
happyIn93 :: t93 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn93 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn93 #-}
happyOut93 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t93
happyOut93 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut93 #-}
happyIn94 :: t94 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn94 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn94 #-}
happyOut94 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t94
happyOut94 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut94 #-}
happyIn95 :: t95 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn95 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn95 #-}
happyOut95 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t95
happyOut95 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut95 #-}
happyIn96 :: t96 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn96 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn96 #-}
happyOut96 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t96
happyOut96 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut96 #-}
happyIn97 :: t97 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn97 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn97 #-}
happyOut97 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t97
happyOut97 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut97 #-}
happyIn98 :: t98 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn98 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn98 #-}
happyOut98 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t98
happyOut98 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut98 #-}
happyIn99 :: t99 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn99 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn99 #-}
happyOut99 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t99
happyOut99 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut99 #-}
happyIn100 :: t100 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn100 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn100 #-}
happyOut100 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t100
happyOut100 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut100 #-}
happyIn101 :: t101 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn101 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn101 #-}
happyOut101 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t101
happyOut101 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut101 #-}
happyIn102 :: t102 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn102 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn102 #-}
happyOut102 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t102
happyOut102 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut102 #-}
happyIn103 :: t103 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn103 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn103 #-}
happyOut103 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t103
happyOut103 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut103 #-}
happyIn104 :: t104 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn104 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn104 #-}
happyOut104 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t104
happyOut104 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut104 #-}
happyIn105 :: t105 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn105 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn105 #-}
happyOut105 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t105
happyOut105 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut105 #-}
happyIn106 :: t106 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn106 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn106 #-}
happyOut106 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t106
happyOut106 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut106 #-}
happyIn107 :: t107 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn107 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn107 #-}
happyOut107 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t107
happyOut107 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut107 #-}
happyIn108 :: t108 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn108 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn108 #-}
happyOut108 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t108
happyOut108 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut108 #-}
happyIn109 :: t109 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn109 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn109 #-}
happyOut109 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t109
happyOut109 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut109 #-}
happyIn110 :: t110 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn110 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn110 #-}
happyOut110 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t110
happyOut110 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut110 #-}
happyIn111 :: t111 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn111 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn111 #-}
happyOut111 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t111
happyOut111 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut111 #-}
happyIn112 :: t112 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn112 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn112 #-}
happyOut112 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t112
happyOut112 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut112 #-}
happyIn113 :: t113 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn113 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn113 #-}
happyOut113 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t113
happyOut113 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut113 #-}
happyIn114 :: t114 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn114 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn114 #-}
happyOut114 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t114
happyOut114 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut114 #-}
happyIn115 :: t115 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn115 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn115 #-}
happyOut115 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t115
happyOut115 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut115 #-}
happyIn116 :: t116 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn116 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn116 #-}
happyOut116 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t116
happyOut116 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut116 #-}
happyIn117 :: t117 -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyIn117 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyIn117 #-}
happyOut117 :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> t117
happyOut117 x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOut117 #-}
happyInTok :: (Token) -> (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117)
happyInTok x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyInTok #-}
happyOutTok :: (HappyAbsSyn t12 t13 t14 t15 t16 t17 t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30 t31 t32 t33 t34 t35 t36 t37 t38 t39 t40 t41 t42 t43 t44 t45 t46 t47 t48 t49 t50 t51 t52 t53 t54 t55 t56 t57 t58 t59 t60 t61 t62 t63 t64 t65 t66 t67 t68 t69 t70 t71 t72 t73 t74 t75 t76 t77 t78 t79 t80 t81 t82 t83 t84 t85 t86 t87 t88 t89 t90 t91 t92 t93 t94 t95 t96 t97 t98 t99 t100 t101 t102 t103 t104 t105 t106 t107 t108 t109 t110 t111 t112 t113 t114 t115 t116 t117) -> (Token)
happyOutTok x = Happy_GHC_Exts.unsafeCoerce# x
{-# INLINE happyOutTok #-}


happyActOffsets :: HappyAddr
happyActOffsets = HappyA# "\x00\x00\x3a\x03\x39\x03\x38\x03\x37\x03\x36\x03\x35\x03\x33\x03\x31\x03\x48\x03\x00\x00\x2f\x03\x2e\x03\x2d\x03\x2c\x03\x2b\x03\x2a\x03\x29\x03\x28\x03\x27\x03\x26\x03\x1c\x03\x25\x03\x1b\x03\x24\x03\x19\x03\x22\x03\x16\x03\xd5\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\x03\x43\x02\x21\x03\x42\x02\x20\x03\x42\x02\x1f\x03\x1e\x03\x1d\x03\x1a\x03\x12\x03\x11\x03\x10\x03\x0f\x03\x0d\x03\x0e\x03\x0c\x03\x0b\x03\x09\x03\x0a\x03\x05\x03\x03\x03\x42\x02\x01\x03\x3f\x02\xfe\x02\x08\x03\x07\x03\x06\x03\x04\x03\x02\x03\x00\x00\x00\x00\x00\x03\xfd\xff\x00\x00\xf8\x02\xfc\xff\x00\x00\xff\x02\xfb\xff\x00\x00\xfd\x02\xfd\x02\xfa\xff\x00\x00\xfc\x02\xfb\x02\x00\x00\xf7\x02\xfa\x02\x4e\x01\xfa\x02\x00\x00\x3f\x02\xf3\x02\xf5\x02\x00\x00\xf2\x02\xf1\x02\x3e\x02\x00\x00\x3e\x02\x3e\x02\xf1\x02\xf9\x02\xf6\x02\xf4\x02\x7e\x02\x00\x00\x00\x00\xef\x02\x00\x00\x00\x00\x83\x01\xee\x02\x39\x00\xf0\x02\x00\x00\x81\x01\x00\x00\xec\x02\xed\x02\x00\x00\x87\x01\x00\x00\xea\x02\xe9\x02\x00\x00\xe6\x02\xeb\x02\x00\x00\xdd\x02\x39\x00\xdb\x02\xe8\x02\x00\x00\x00\x00\x39\x00\xe7\x02\xda\x02\x3e\x00\x00\x00\x00\x00\xeb\xff\xd9\x02\x3a\x02\x36\x00\x00\x00\x00\x00\x00\x00\xe5\x02\xe4\x02\xe3\x02\x6a\x02\xf9\xff\x00\x00\x00\x00\x59\x01\x6a\x02\x00\x00\x00\x00\x39\x00\x00\x00\xdc\x02\x7c\x01\x00\x00\xd8\x02\x00\x00\xd7\x02\x00\x00\xd6\x02\x00\x00\x30\x01\xd5\x02\x39\x00\x00\x00\x39\x00\x00\x00\xd4\x02\xd3\x02\x00\x00\x00\x00\x35\x02\x00\x00\xce\x02\x35\x02\x35\x02\x35\x02\x92\x01\x00\x00\xd9\x01\x0a\x02\xd1\x02\x00\x00\xae\x01\xd2\x02\x00\x00\x77\x01\x00\x00\x38\x02\x00\x00\x00\x00\xd0\x02\xcf\x02\x00\x00\x00\x00\x39\x00\x0a\x00\x36\x00\x00\x00\x00\x00\xcb\x02\x00\x00\x00\x00\x38\x02\x00\x00\x39\x00\x39\x00\x49\x01\xca\x02\x00\x00\xc9\x02\xf7\xff\xe2\x02\x33\x02\x00\x00\x3e\x00\x00\x00\x00\x00\xc8\x02\x39\x00\xc5\x02\x00\x00\x00\x00\x39\x00\x00\x00\xc5\x02\x39\x00\x39\x00\x39\x00\xc3\x02\x00\x00\xc2\x02\xbe\x02\xc0\x02\x00\x00\x34\x02\xbd\x02\x39\x00\xbb\x02\x80\x01\xb9\x02\xb8\x02\xfa\x00\xe1\x02\xe0\x02\x00\x00\xb7\x02\x2d\x02\x0a\x00\x36\x00\x39\x00\x36\x00\x36\x00\x36\x00\x2d\x02\xf0\xff\x36\x00\x36\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x70\x02\x0a\x00\x0a\x00\xdf\x02\x00\x00\xb2\x02\xde\x02\xcd\x02\x40\x02\x00\x00\x00\x00\x00\x00\xb0\x02\x36\x00\x00\x00\x00\x00\x00\x00\x5f\x01\x00\x00\x78\x01\x00\x00\x00\x00\x00\x00\xae\x02\x00\x00\xcc\x02\x40\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x29\x02\xab\x02\x29\x02\xf4\xff\xc7\x02\xc6\x02\xc4\x02\xac\x02\xaf\x02\x29\x02\x29\x02\x0a\x02\x0a\x02\x0a\x02\x2c\x02\xa5\x02\xa1\x02\xa1\x02\x00\x00\xc5\x00\x00\x00\x00\x00\x9c\x02\x00\x00\x39\x00\x36\x00\x36\x00\x9e\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\x02\x00\x00\x00\x00\x00\x00\x00\x00\x94\x02\xec\xff\xfe\xff\x00\x00\x00\x00\x00\x00\x00\x00\x39\x00\x00\x00\x36\x00\xd6\x00\xd6\x00\x9b\x02\x00\x00\x98\x02\x36\x00\xc1\x02\xbf\x02\xba\x02\x2c\x02\x2c\x02\x25\x02\x25\x02\x25\x02\x00\x00\x01\x00\x00\x00\x9a\x02\x25\x02\x8a\x00\x97\x02\x95\x02\x00\x00\x00\x00\x00\x00\xb4\x01\x00\x00\x93\x02\x00\x00\x21\x00\x54\x02\xeb\xff\x00\x00\xf4\xff\xbc\x02\xbc\x02\xbc\x02\x00\x00\x00\x00\x8f\x02\x8e\x02\x36\x00\x92\x02\x36\x00\x00\x00\x00\x00\x00\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x21\x01\xb6\x02\xb1\x02\xa7\x02\x8d\x02\xb5\x02\xa3\x02\x00\x00\x8b\x02\xeb\xff\x23\x02\xe6\x00\x00\x00\x89\x02\x39\x00\x00\x00\x00\x00\x00\x00\xa4\x02\x87\x02\x8a\x00\x39\x00\x36\x00\x69\x02\x00\x00\x1f\x02\x8a\x02\x00\x00\x86\x02\x36\x00\x85\x02\x7a\x02\x00\x00\x00\x00\x00\x00\xb4\x02\x7f\x01\x00\x00\x84\x02\x7b\x02\x00\x00\x00\x00\xb3\x02\xe6\xff\x88\x02\x8a\x00\xeb\xff\x83\x02\xa0\x02\x1f\x02\x00\x00\x00\x00\x36\x00\x00\x00\x00\x00\x67\x02\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x02\x8a\x00\x90\x02\x00\x00\x00\x00\x00\x00"#

happyGotoOffsets :: HappyAddr
happyGotoOffsets = HappyA# "\x6b\x02\xa2\x02\xa8\x02\x7c\x02\x82\x02\x76\x02\x73\x02\x81\x02\x63\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa6\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x65\x02\xec\x01\xf5\x01\xf2\xff\x00\x00\x5e\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x00\x00\x55\x00\x00\x00\x9f\x02\x99\x02\x00\x00\x00\x00\x00\x00\x00\x00\x80\x02\x00\x00\x00\x00\x00\x00\xad\x02\x00\x00\x7d\x02\xaa\x02\x00\x00\x7f\x02\xa9\x02\x00\x00\x75\x02\x74\x02\xa6\x02\x00\x00\x00\x00\x61\x02\x00\x00\x9d\x02\x78\x02\x42\x00\x77\x02\x00\x00\x91\x02\x00\x00\x00\x00\x00\x00\x8c\x02\x6d\x02\x51\x00\x00\x00\xf3\xff\x49\x00\x6c\x02\x00\x00\x00\x00\x00\x00\x79\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xba\x01\x00\x00\x00\x00\x72\x02\x00\x00\x17\x00\x00\x00\x00\x00\x71\x02\x00\x00\x00\x00\xe5\xff\x00\x00\x00\x00\x6f\x02\x00\x00\x11\x02\xe4\x01\x00\x00\x00\x00\x00\x00\x00\x00\xf6\x01\x00\x00\x00\x00\xe1\xff\x00\x00\x00\x00\x52\x01\xe9\xff\x49\x02\xba\x00\x41\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x02\x60\x02\x00\x00\x00\x00\x00\x00\x5f\x02\x00\x00\x00\x00\xb7\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x51\x02\x00\x00\xf5\xff\x47\x02\xad\x01\x00\x00\xaa\x01\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x54\x00\x00\x00\x00\x00\x39\x01\x35\x01\x32\x01\x73\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x01\x00\x00\x22\x02\x00\x00\x00\x00\x0c\x02\x0d\x02\x00\x00\x00\x00\xde\x01\x56\x01\xe1\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x02\x00\x00\xd0\x01\xc7\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xdf\xff\x00\x00\x00\x00\x00\x00\xa7\x01\xdc\x01\x00\x00\x00\x00\x9d\x01\x00\x00\xb7\x00\xf3\x01\xed\x01\xea\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1e\x02\x02\x02\x9a\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\x01\x2b\x01\xcd\x00\x2e\x01\xda\x01\x2a\x01\x11\x01\x0d\x01\x98\x00\x01\x01\xfd\x00\xf1\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9b\x00\x2f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xee\x01\x00\x00\x00\x00\x00\x00\x00\x00\xad\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf7\x01\x00\x00\x00\x00\x00\x00\xf6\xff\x00\x00\x2a\x02\xf4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x98\x01\x07\x00\x92\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x01\xa5\x00\x00\x00\x00\x00\x00\x00\x1c\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc3\x01\xd4\x00\xc7\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xdf\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x02\x00\x00\x00\x00\x00\x00\x00\x00\xe8\x01\x00\x00\x24\x01\x06\x02\xcd\x01\x00\x00\x00\x00\x00\x00\xe4\xff\x00\x00\x00\x00\x00\x00\xb3\x01\x8d\x01\x88\x00\x7c\x00\x4c\x00\x00\x00\x2f\x01\x00\x00\x00\x00\x32\x00\x54\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5a\x01\x00\x00\x4d\x01\x00\x00\xf4\x00\x8c\x01\x7b\x01\x23\x01\x00\x00\x00\x00\x00\x00\x00\x00\xed\x00\x00\x00\x1a\x01\x00\x00\x00\x00\x00\x00\x00\x00\x89\x01\x00\x00\x00\x00\x00\x00\x09\x01\x00\x00\x00\x00\x00\x00\x1d\x02\x10\x00\x00\x00\x00\x00\x17\x01\xdd\x00\x1f\x00\x00\x00\x00\x00\x1b\x01\x97\x01\x00\x00\x00\x00\x00\x00\x00\x00\xbf\x00\x50\x01\xd4\x01\x9d\x00\x1d\x00\x00\x00\x80\x00\x00\x00\x00\x00\x4b\x00\x90\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa2\x00\x00\x00\x00\x00\x56\x00\x00\x00\x00\x00\x00\x00\x6d\x00\x00\x00\x00\x00\x4b\x01\x71\x00\xea\xff\x00\x00\xd1\xff\x00\x00\x00\x00\x75\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd0\xff\x46\x01\x00\x00\x00\x00\x00\x00\x00\x00"#

happyDefActions :: HappyAddr
happyDefActions = HappyA# "\xf2\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf6\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf3\xff\xf1\xff\xf0\xff\xef\xff\xee\xff\xed\xff\xec\xff\xeb\xff\xea\xff\xe9\xff\xe8\xff\xe7\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x50\xff\x4f\xff\x00\x00\x00\x00\xcc\xff\x00\x00\x00\x00\xd1\xff\x00\x00\x00\x00\xd7\xff\x00\x00\x00\x00\x00\x00\xe5\xff\x00\x00\xe2\xff\xe6\xff\x00\x00\x00\x00\x00\x00\x00\x00\xd8\xff\x00\x00\x00\x00\x00\x00\xd2\xff\x00\x00\x00\x00\xa8\xff\xcd\xff\x00\x00\xa8\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcf\xff\xd5\xff\x00\x00\xa5\xff\x4c\xff\xa4\xff\x00\x00\x00\x00\xa0\xff\x9f\xff\x00\x00\x40\xff\x00\x00\x5a\xff\x59\xff\x00\x00\x9d\xff\x00\x00\x00\x00\x6f\xff\x6e\xff\x69\xff\x63\xff\x00\x00\x00\x00\x00\x00\x00\x00\x55\xff\x54\xff\x00\x00\x65\xff\x68\xff\x00\x00\x53\xff\x52\xff\x00\x00\x00\x00\x00\x00\x00\x00\xbe\xff\xc0\xff\xbf\xff\x00\x00\x00\x00\x00\x00\xaf\xff\x00\x00\xa7\xff\xcb\xff\x00\x00\xaf\xff\xd0\xff\xac\xff\x00\x00\xd6\xff\x00\x00\x00\x00\xa2\xff\x00\x00\xe4\xff\xe3\xff\xe1\xff\xde\xff\xdf\xff\x00\x00\x00\x00\x00\x00\xa1\xff\x00\x00\xce\xff\x00\x00\x46\xff\xad\xff\xa9\xff\x00\x00\xc8\xff\x00\x00\x4e\xff\x4e\xff\x4e\xff\x00\x00\x9b\xff\x9a\xff\x95\xff\x91\xff\x8f\xff\x8b\xff\x7c\xff\x78\xff\x74\xff\x89\xff\x74\xff\x7e\xff\x7d\xff\x00\x00\x00\x00\x80\xff\x7f\xff\x00\x00\x7a\xff\x00\x00\x4b\xff\xa3\xff\xaa\xff\x44\xff\x81\xff\x74\xff\x66\xff\x60\xff\x60\xff\x00\x00\x00\x00\x61\xff\x5e\xff\x00\x00\x00\x00\x5c\xff\x6a\xff\x00\x00\x9e\xff\x3f\xff\x00\x00\x00\x00\x00\x00\x58\xff\x56\xff\x00\x00\x6b\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x62\xff\x00\x00\x5f\xff\x00\x00\x75\xff\x74\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\xff\x00\x00\x00\x00\x00\x00\x76\xff\x00\x00\x4e\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\xff\x00\x00\x00\x00\x00\x00\xc1\xff\xbd\xff\xbc\xff\xbb\xff\xba\xff\xb9\xff\x00\x00\x00\x00\x00\x00\x00\x00\x83\xff\x4d\xff\x00\x00\x00\x00\x00\x00\xa6\xff\xae\xff\xab\xff\x45\xff\x00\x00\xd4\xff\xd3\xff\xe0\xff\x00\x00\xdb\xff\x00\x00\xdd\xff\xd9\xff\xdc\xff\x00\x00\xca\xff\x00\x00\x3e\xff\x3d\xff\x3b\xff\x3a\xff\x39\xff\x38\xff\x00\x00\x36\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\xff\x4e\xff\x96\xff\x97\xff\x99\xff\x74\xff\x00\x00\x93\xff\x94\xff\x90\xff\x00\x00\x8d\xff\x77\xff\x00\x00\x88\xff\x60\xff\x00\x00\x00\x00\x00\x00\x7b\xff\x85\xff\x43\xff\x70\xff\x72\xff\x71\xff\x73\xff\x67\xff\x64\xff\x51\xff\x5d\xff\x00\x00\x00\x00\x5b\xff\x57\xff\x6d\xff\xf5\xff\x00\x00\x9c\xff\x00\x00\x00\x00\x00\x00\x00\x00\x84\xff\x8a\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\xff\x4e\xff\x4e\xff\x23\xff\x33\xff\x32\xff\x00\x00\x00\x00\x2a\xff\x35\xff\x37\xff\x3c\xff\xc9\xff\xda\xff\x00\x00\x34\xff\x28\xff\x26\xff\x00\x00\x00\x00\x00\x00\x31\xff\x00\x00\xb4\xff\xb4\xff\xb4\xff\xb5\xff\xb6\xff\x00\x00\x00\x00\x00\x00\x92\xff\x00\x00\x82\xff\x86\xff\x87\xff\x8e\xff\x00\x00\x6c\xff\xf4\xff\x8c\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\xff\x2c\xff\x00\x00\x00\x00\x00\x00\x29\xff\x00\x00\x00\x00\x24\xff\x25\xff\x27\xff\x00\x00\x2c\xff\x2a\xff\x00\x00\x00\x00\x00\x00\xc5\xff\x00\x00\xb3\xff\xb2\xff\x00\x00\x00\x00\x00\x00\x00\x00\x98\xff\xb8\xff\xb7\xff\x00\x00\x00\x00\x42\xff\x00\x00\x00\x00\xc6\xff\xc4\xff\x00\x00\x00\x00\x00\x00\x2a\xff\x00\x00\x2c\xff\x00\x00\x00\x00\x2b\xff\xc7\xff\x00\x00\xb1\xff\xb0\xff\x00\x00\xc2\xff\x41\xff\xc3\xff\x2f\xff\x00\x00\x2a\xff\x00\x00\x2e\xff\x2d\xff"#

happyCheck :: HappyAddr
happyCheck = HappyA# "\xff\xff\x0c\x00\x0d\x00\x0d\x00\x0b\x00\x0b\x00\x0b\x00\x0b\x00\x0b\x00\x17\x00\x18\x00\x18\x00\x21\x00\x22\x00\x23\x00\x1b\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x2e\x00\x2c\x00\x2e\x00\x2f\x00\x36\x00\x1b\x00\x00\x00\x2e\x00\x2f\x00\x3c\x00\x3d\x00\x2b\x00\x53\x00\x53\x00\x27\x00\x42\x00\x41\x00\x44\x00\x45\x00\x4b\x00\x21\x00\x4b\x00\x1d\x00\x1e\x00\x44\x00\x40\x00\x52\x00\x2d\x00\x52\x00\x44\x00\x2d\x00\x46\x00\x53\x00\x52\x00\x69\x00\x69\x00\x1e\x00\x35\x00\x36\x00\x53\x00\x54\x00\x5b\x00\x55\x00\x59\x00\x53\x00\x54\x00\x53\x00\x53\x00\x53\x00\x54\x00\x52\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x65\x00\x5b\x00\x5b\x00\x51\x00\x55\x00\x53\x00\x54\x00\x20\x00\x21\x00\x22\x00\x23\x00\x55\x00\x25\x00\x26\x00\x53\x00\x54\x00\x26\x00\x58\x00\x59\x00\x5b\x00\x2a\x00\x2e\x00\x2f\x00\x45\x00\x50\x00\x51\x00\x30\x00\x31\x00\x32\x00\x33\x00\x00\x00\x30\x00\x31\x00\x32\x00\x33\x00\x53\x00\x00\x00\x45\x00\x54\x00\x40\x00\x35\x00\x36\x00\x30\x00\x44\x00\x32\x00\x46\x00\x35\x00\x36\x00\x46\x00\x2a\x00\x30\x00\x53\x00\x32\x00\x46\x00\x53\x00\x32\x00\x32\x00\x69\x00\x53\x00\x54\x00\x3f\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x69\x00\x53\x00\x5b\x00\x55\x00\x53\x00\x54\x00\x55\x00\x00\x00\x5b\x00\x53\x00\x5a\x00\x55\x00\x53\x00\x53\x00\x55\x00\x55\x00\x05\x00\x06\x00\x53\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x42\x00\x0e\x00\x44\x00\x45\x00\x42\x00\x12\x00\x44\x00\x45\x00\x3f\x00\x16\x00\x63\x00\x64\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x69\x00\x53\x00\x1f\x00\x20\x00\x3f\x00\x53\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x44\x00\x53\x00\x54\x00\x55\x00\x42\x00\x53\x00\x44\x00\x45\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x53\x00\x54\x00\x55\x00\x54\x00\x42\x00\x45\x00\x44\x00\x45\x00\x53\x00\x3f\x00\x53\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x53\x00\x54\x00\x55\x00\x53\x00\x42\x00\x53\x00\x44\x00\x45\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x53\x00\x54\x00\x55\x00\x69\x00\x42\x00\x27\x00\x44\x00\x45\x00\x53\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x4e\x00\x41\x00\x50\x00\x51\x00\x42\x00\x01\x00\x44\x00\x45\x00\x53\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x45\x00\x3d\x00\x3e\x00\x3f\x00\x42\x00\x52\x00\x44\x00\x45\x00\x53\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x42\x00\x53\x00\x44\x00\x45\x00\x42\x00\x65\x00\x44\x00\x45\x00\x53\x00\x3b\x00\x3c\x00\x3d\x00\x45\x00\x3b\x00\x3c\x00\x3d\x00\x42\x00\x53\x00\x44\x00\x45\x00\x42\x00\x53\x00\x44\x00\x45\x00\x51\x00\x3b\x00\x3c\x00\x3d\x00\x41\x00\x3b\x00\x3c\x00\x3d\x00\x42\x00\x53\x00\x44\x00\x45\x00\x42\x00\x53\x00\x44\x00\x45\x00\x53\x00\x27\x00\x3c\x00\x3d\x00\x28\x00\x52\x00\x3c\x00\x3d\x00\x42\x00\x53\x00\x44\x00\x45\x00\x42\x00\x53\x00\x44\x00\x45\x00\x3d\x00\x64\x00\x38\x00\x39\x00\x3a\x00\x42\x00\x69\x00\x44\x00\x45\x00\x53\x00\x3d\x00\x46\x00\x47\x00\x53\x00\x3f\x00\x42\x00\x3d\x00\x44\x00\x45\x00\x3f\x00\x3d\x00\x42\x00\x53\x00\x44\x00\x45\x00\x42\x00\x3f\x00\x44\x00\x45\x00\x3f\x00\x45\x00\x5b\x00\x53\x00\x3f\x00\x53\x00\x54\x00\x55\x00\x65\x00\x53\x00\x53\x00\x54\x00\x55\x00\x53\x00\x53\x00\x68\x00\x54\x00\x53\x00\x54\x00\x55\x00\x53\x00\x54\x00\x55\x00\x02\x00\x53\x00\x54\x00\x55\x00\x42\x00\x47\x00\x44\x00\x45\x00\x64\x00\x42\x00\x47\x00\x44\x00\x45\x00\x69\x00\x43\x00\x44\x00\x45\x00\x43\x00\x0b\x00\x55\x00\x0d\x00\x53\x00\x5b\x00\x54\x00\x28\x00\x45\x00\x53\x00\x5b\x00\x15\x00\x16\x00\x53\x00\x51\x00\x5b\x00\x66\x00\x67\x00\x68\x00\x5b\x00\x51\x00\x66\x00\x67\x00\x68\x00\x28\x00\x5b\x00\x66\x00\x67\x00\x68\x00\x42\x00\x66\x00\x67\x00\x68\x00\x3d\x00\x3e\x00\x3f\x00\x48\x00\x67\x00\x68\x00\x47\x00\x45\x00\x4e\x00\x4f\x00\x47\x00\x3e\x00\x48\x00\x52\x00\x48\x00\x4d\x00\x51\x00\x01\x00\x48\x00\x46\x00\x47\x00\x4b\x00\x52\x00\x47\x00\x52\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x49\x00\x4a\x00\x4b\x00\x49\x00\x4a\x00\x4b\x00\x49\x00\x4a\x00\x4b\x00\x52\x00\x3c\x00\x53\x00\x52\x00\x55\x00\x40\x00\x52\x00\x49\x00\x4a\x00\x4b\x00\x49\x00\x4a\x00\x4b\x00\x49\x00\x4a\x00\x4b\x00\x52\x00\x47\x00\x0f\x00\x52\x00\x11\x00\x4a\x00\x52\x00\x49\x00\x4a\x00\x4b\x00\x49\x00\x4a\x00\x4b\x00\x52\x00\x01\x00\x13\x00\x52\x00\x15\x00\x2c\x00\x52\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x52\x00\x3d\x00\x3e\x00\x3f\x00\x52\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4a\x00\x4b\x00\x40\x00\x4d\x00\x52\x00\x2c\x00\x4a\x00\x4b\x00\x52\x00\x4d\x00\x4a\x00\x4b\x00\x00\x00\x4d\x00\x52\x00\x51\x00\x4a\x00\x4b\x00\x52\x00\x4d\x00\x4a\x00\x4b\x00\x4a\x00\x4b\x00\x52\x00\x4a\x00\x4b\x00\x37\x00\x52\x00\x2f\x00\x52\x00\x4a\x00\x4b\x00\x52\x00\x4a\x00\x4b\x00\x38\x00\x39\x00\x3a\x00\x52\x00\x29\x00\x2a\x00\x52\x00\x01\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x0a\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x4e\x00\x0b\x00\x50\x00\x51\x00\x4e\x00\x00\x00\x50\x00\x51\x00\x22\x00\x46\x00\x47\x00\x46\x00\x47\x00\x46\x00\x47\x00\x09\x00\x0a\x00\x07\x00\x08\x00\x03\x00\x04\x00\x1c\x00\x1d\x00\x53\x00\x54\x00\x0b\x00\x0c\x00\x53\x00\x54\x00\x53\x00\x54\x00\x4e\x00\x4f\x00\x53\x00\x54\x00\x0e\x00\x0f\x00\x53\x00\x54\x00\x4e\x00\x4f\x00\x51\x00\x52\x00\x4e\x00\x4f\x00\x53\x00\x54\x00\x2b\x00\x21\x00\x22\x00\x53\x00\x54\x00\x11\x00\x12\x00\x53\x00\x54\x00\x54\x00\x55\x00\x53\x00\x54\x00\x54\x00\x55\x00\x2b\x00\x21\x00\x2c\x00\x53\x00\x2c\x00\x2c\x00\x33\x00\x33\x00\x15\x00\x11\x00\x2c\x00\x2c\x00\x08\x00\x00\x00\x33\x00\x33\x00\x00\x00\x00\x00\x2c\x00\x2f\x00\x00\x00\x15\x00\x2f\x00\x11\x00\x53\x00\x4f\x00\x31\x00\x38\x00\x34\x00\x14\x00\x41\x00\x10\x00\x29\x00\x53\x00\x48\x00\x34\x00\x1d\x00\x0b\x00\x0b\x00\x1c\x00\x0c\x00\x1f\x00\x40\x00\x49\x00\x14\x00\x1f\x00\x40\x00\x44\x00\x37\x00\x14\x00\x40\x00\x10\x00\x13\x00\x34\x00\x0e\x00\x56\x00\x44\x00\x13\x00\x0f\x00\x3c\x00\x0f\x00\x0f\x00\x0b\x00\x37\x00\x53\x00\x0d\x00\x56\x00\x52\x00\x54\x00\x48\x00\x43\x00\x3b\x00\x35\x00\x47\x00\x34\x00\x51\x00\x57\x00\x57\x00\x52\x00\x51\x00\x55\x00\x4c\x00\x0d\x00\x0d\x00\xff\xff\x0e\x00\x0e\x00\x0e\x00\x0e\x00\x0e\x00\x0e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x46\x00\x45\x00\x54\x00\x50\x00\x0d\x00\x54\x00\x0d\x00\x52\x00\x4d\x00\x0d\x00\x47\x00\x37\x00\x47\x00\x47\x00\xff\xff\xff\xff\xff\xff\x53\x00\xff\xff\x52\x00\x54\x00\x42\x00\x4b\x00\xff\xff\xff\xff\xff\xff\x49\x00\xff\xff\x54\x00\x44\x00\x50\x00\xff\xff\x49\x00\x55\x00\x4d\x00\x46\x00\x49\x00\x58\x00\x54\x00\x4d\x00\x49\x00\x53\x00\xff\xff\x53\x00\xff\xff\xff\xff\xff\xff\x53\x00\x46\x00\x46\x00\xff\xff\xff\xff\x54\x00\x57\x00\x48\x00\xff\xff\xff\xff\xff\xff\x46\x00\xff\xff\xff\xff\x42\x00\x55\x00\x49\x00\x54\x00\x54\x00\x52\x00\x54\x00\x51\x00\x48\x00\x46\x00\x42\x00\x49\x00\x54\x00\x48\x00\x53\x00\x49\x00\x53\x00\x5d\x00\x5d\x00\x49\x00\x53\x00\x49\x00\x49\x00\x49\x00\x54\x00\x0b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\x54\x00\x5c\x00\xff\xff\xff\xff\x5d\x00\xff\xff\xff\xff\xff\xff\x5d\x00\x5c\x00\x5b\x00\x5d\x00\x5c\x00\x5b\x00\x5d\x00\x53\x00\x5d\x00\x5d\x00\x53\x00\x53\x00\x53\x00\x53\x00\x5e\x00\x54\x00\x53\x00\x5e\x00\xff\xff\x5e\x00\x5e\x00\xff\xff\x5a\x00\xff\xff\x5a\x00\x5a\x00\x5a\x00\xff\xff\x5a\x00\xff\xff\x5a\x00\x5e\x00\x5a\x00\x5e\x00\x5a\x00\x5e\x00\x59\x00\x5e\x00\x59\x00\x5e\x00\x59\x00\x59\x00\x59\x00\x59\x00\x59\x00\x59\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"#

happyTable :: HappyAddr
happyTable = HappyA# "\x00\x00\x25\x01\x26\x01\x7c\x01\x0b\x00\x0b\x00\x0b\x00\x0b\x00\x0b\x00\x4a\x00\x4b\x00\x9d\x00\xc9\x00\xca\x00\xcb\x00\x77\x01\xc8\x00\xc9\x00\xca\x00\xcb\x00\x43\x01\xcc\x00\xcd\x00\xd3\x00\x62\x01\xce\x00\xcf\x00\xe4\x00\x77\x01\xc0\x01\xce\x00\xcf\x00\x8e\x01\xc2\x00\xf0\x00\x72\x01\x72\x01\x61\x01\xc3\x00\xcb\x01\xc4\x00\xc5\x00\xec\x00\xc9\x00\xd8\x00\xaf\x01\xb0\x01\xd1\x00\xd0\x00\x83\x00\x97\x01\x83\x00\xd1\x00\x1e\x01\xd2\x00\xc6\x00\xf1\x00\xd7\x01\xd3\x01\xc1\x01\x78\x01\x76\x00\x48\x00\x49\x00\x77\x00\xe4\x00\xd4\x00\x48\x00\x49\x00\x4c\x00\x4c\x00\x48\x00\x49\x00\xf1\x00\xb8\x00\x5a\x00\x5f\x00\x63\x00\x67\x00\xd5\x01\x27\x01\x27\x01\x86\x01\xe4\x00\x48\x00\x49\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xe4\x00\xcc\x00\xcd\x00\x48\x00\x49\x00\x85\x00\x1f\x01\x20\x01\x77\x00\x86\x00\xce\x00\xcf\x00\xa5\x01\x7a\x00\x7b\x00\x87\x00\x88\x00\x89\x00\x8a\x00\xcb\x01\x87\x00\x88\x00\x89\x00\x8a\x00\x72\x01\x0e\x01\x3b\x01\x79\x00\xd0\x00\xa5\x00\x76\x00\x9b\x00\xd1\x00\x9c\x00\xd2\x00\x75\x00\x76\x00\x8b\x00\xcd\x01\x9e\x00\xd7\x00\x9c\x00\x8b\x00\x72\x01\x1d\x01\x70\x00\xaa\x01\x48\x00\x49\x00\x86\x01\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x0f\x01\x10\x01\x11\x01\x12\x01\x13\x01\x82\x01\x71\x00\x77\x00\x72\x00\x71\x00\x18\x01\x19\x01\xd0\x01\x77\x00\x71\x00\xbc\x01\x72\x00\x71\x00\x71\x00\x72\x00\x72\x00\x1d\x00\x1e\x00\x72\x01\xd2\x01\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc7\x01\x1f\x00\xc4\x00\xc5\x00\xc3\x00\x20\x00\xc4\x00\xc5\x00\x87\x01\x21\x00\x73\x01\x74\x01\x22\x00\x23\x00\x24\x00\x25\x00\x75\x01\xd7\x00\x26\x00\x27\x00\x88\x01\xc6\x00\xbb\x01\xbf\x00\xc0\x00\xc1\x00\xc2\x00\x82\x01\x71\x00\x18\x01\x19\x01\xc3\x00\xbf\x01\xc4\x00\xc5\x00\xc2\x01\xbf\x00\xc0\x00\xc1\x00\xc2\x00\x71\x00\x18\x01\x19\x01\x79\x00\xc3\x00\x3c\x01\xc4\x00\xc5\x00\xc6\x00\x6b\x01\x72\x01\x2c\x01\xbf\x00\xc0\x00\xc1\x00\xc2\x00\x71\x00\x43\x01\x19\x01\xd7\x00\xc3\x00\xc6\x00\xc4\x00\xc5\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\x71\x00\x18\x01\x19\x01\x77\x01\xc3\x00\x61\x01\xc4\x00\xc5\x00\xc6\x00\x64\x01\xc0\x00\xc1\x00\xc2\x00\x5d\x01\x69\x01\xe1\x00\x7b\x00\xc3\x00\xb8\x01\xc4\x00\xc5\x00\xc6\x00\x65\x01\xc0\x00\xc1\x00\xc2\x00\x49\x01\x0c\x01\x0d\x01\x0e\x01\xc3\x00\xf1\x00\xc4\x00\xc5\x00\xc6\x00\xfb\x00\xc0\x00\xc1\x00\xc2\x00\xab\x01\xd7\x00\xc4\x00\xc5\x00\xc3\x00\xc5\x01\xc4\x00\xc5\x00\xc6\x00\x98\x01\xc1\x00\xc2\x00\xaa\x01\x3f\x01\xc1\x00\xc2\x00\xc3\x00\xd7\x00\xc4\x00\xc5\x00\xc3\x00\xc6\x00\xc4\x00\xc5\x00\xa6\x01\x40\x01\xc1\x00\xc2\x00\x50\x01\x41\x01\xc1\x00\xc2\x00\xc3\x00\xc6\x00\xc4\x00\xc5\x00\xc3\x00\xc6\x00\xc4\x00\xc5\x00\x72\x01\x61\x01\x44\x01\xc2\x00\x9b\x01\xf1\x00\x45\x01\xc2\x00\xc3\x00\xc6\x00\xc4\x00\xc5\x00\xc3\x00\xc6\x00\xc4\x00\xc5\x00\x97\x01\x9f\x01\x09\x01\x0a\x01\x0b\x01\xc3\x00\x75\x01\xc4\x00\xc5\x00\xc6\x00\x93\x01\x6a\x01\xf7\x00\xc6\x00\x6c\x01\xc3\x00\x46\x01\xc4\x00\xc5\x00\x4a\x01\x48\x01\xc3\x00\xc6\x00\xc4\x00\xc5\x00\xc3\x00\x17\x01\xc4\x00\xc5\x00\x1a\x01\x29\x01\x7d\x01\xc6\x00\x1b\x01\x71\x00\x18\x01\x19\x01\xac\x01\xc6\x00\x71\x00\x18\x01\x19\x01\xc6\x00\x72\x01\xa8\x01\x79\x00\x71\x00\x18\x01\x19\x01\x71\x00\x18\x01\x19\x01\x95\x01\x71\x00\x18\x01\x19\x01\xa0\x01\xf3\x00\xc4\x00\xc5\x00\x84\x01\xd6\x00\xa7\x00\xc4\x00\xc5\x00\x75\x01\xfc\x00\xfd\x00\xc5\x00\xb7\x00\x0b\x00\xe4\x00\x15\x01\xd7\x00\x7d\x01\x79\x00\x9d\x01\x2b\x01\xd7\x00\x7d\x01\x16\x01\x17\x01\xd7\x00\xb8\x00\x7d\x01\xd6\x01\x7f\x01\x80\x01\x7d\x01\x2c\x01\xc8\x01\x7f\x01\x80\x01\x9e\x01\x7d\x01\xc4\x01\x7f\x01\x80\x01\x04\x01\x7e\x01\x7f\x01\x80\x01\x0c\x01\x0d\x01\x0e\x01\x61\x00\xa3\x01\x80\x01\xb1\x00\xcf\x01\xf9\x00\xfa\x00\x52\x01\x02\x01\x61\x00\x7f\x00\x92\x00\xd0\x01\x80\x00\x91\x01\x61\x00\xf6\x00\xf7\x00\xe8\x00\x7f\x00\x89\x01\x93\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\xa7\x01\x81\x00\x82\x00\x53\x01\x81\x00\x82\x00\x5e\x01\x81\x00\x82\x00\x83\x00\x06\x01\x71\x00\x83\x00\x79\x01\x07\x01\x83\x00\xea\x00\x81\x00\x82\x00\x22\x01\x81\x00\x82\x00\x23\x01\x81\x00\x82\x00\x83\x00\x8a\x01\x50\x00\x83\x00\x51\x00\xa7\x01\x83\x00\xb2\x00\x81\x00\x82\x00\x80\x00\x81\x00\x82\x00\x7f\x00\x92\x01\x4d\x00\x83\x00\x4e\x00\x62\x01\x83\x00\xde\x00\x82\x00\x66\x01\xf4\x00\xde\x00\x82\x00\xf3\x00\xf4\x00\x83\x00\x0c\x01\x0d\x01\x0e\x01\x83\x00\xde\x00\x82\x00\xf5\x00\xf4\x00\xde\x00\x82\x00\x4b\x01\xc3\x01\x83\x00\x29\x01\xde\x00\x82\x00\x83\x00\x47\x01\xde\x00\x82\x00\x7b\x01\xfe\x00\x83\x00\xe9\x00\xde\x00\x82\x00\x83\x00\xdf\x00\x94\x01\x82\x00\x5a\x01\x82\x00\x83\x00\x5b\x01\x82\x00\x54\x01\x83\x00\x00\x01\x83\x00\x5c\x01\x82\x00\x83\x00\xdb\x00\x82\x00\x09\x01\x0a\x01\x0b\x01\x83\x00\xb2\x01\xb3\x01\x83\x00\x5f\x01\x2d\x01\x2e\x01\x2f\x01\x30\x01\x31\x01\x32\x01\x33\x01\x24\x01\x7a\x01\x30\x01\x31\x01\x32\x01\x33\x01\x35\x01\x36\x01\x37\x01\x38\x01\xff\x00\xac\x00\xe1\x00\x7b\x00\xe0\x00\xb8\x00\xe1\x00\x7b\x00\xbd\x00\x56\x01\xf7\x00\xf6\x00\xf7\x00\x01\x01\xf7\x00\xa9\x00\xaa\x00\x54\x00\x55\x00\x1b\x00\x1c\x00\xa2\x01\xa3\x01\x48\x00\x49\x00\x0b\x00\xb2\x01\x48\x00\x49\x00\x48\x00\x49\x00\xf9\x00\xfa\x00\x48\x00\x49\x00\x3e\x01\x3f\x01\x48\x00\x49\x00\xf9\x00\xfa\x00\xee\x00\xe9\x00\xf9\x00\xfa\x00\x48\x00\x49\x00\xb3\x00\xb5\x00\xb6\x00\x48\x00\x49\x00\x96\x00\x97\x00\x48\x00\x49\x00\x53\x00\x54\x00\x48\x00\x49\x00\x53\x00\x54\x00\xb9\x00\x94\x00\xe2\x00\xd2\x00\xe6\x00\x7d\x00\x9a\x00\x9f\x00\xa0\x00\xa3\x00\xa4\x00\xa7\x00\xa8\x00\x58\x00\x5a\x00\x5c\x00\x5d\x00\x61\x00\x5f\x00\x63\x00\x65\x00\x6d\x00\x68\x00\x6e\x00\x46\x00\x0b\x00\x13\x00\x15\x00\x0d\x00\x19\x00\x11\x00\x17\x00\xd9\x01\xd2\x01\x0f\x00\xca\x01\xd5\x01\x0b\x00\x0b\x00\xc7\x01\xb2\x01\xaf\x01\xae\x01\xcd\x01\xb7\x01\xb6\x01\xae\x01\xb5\x01\x08\x01\xb8\x01\xae\x01\x9d\x01\x8c\x01\x84\x01\x8e\x01\xba\x01\xb5\x01\x8d\x01\x70\x01\x90\x01\x71\x01\x72\x01\x0b\x00\x08\x01\xbe\x01\x39\x01\xbb\x01\xbf\x01\x79\x00\x61\x00\x68\x01\x6a\x01\x6f\x01\x91\x01\x6e\x01\xa6\x01\x9a\x01\x9b\x01\x93\x00\x80\x00\xe4\x00\x64\x01\x3a\x01\x3b\x01\x00\x00\x4e\x01\x4f\x01\xef\x00\xbb\x00\xbc\x00\xbd\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4d\x01\x51\x01\x79\x00\xfb\x00\x98\x00\x79\x00\x99\x00\x93\x00\x05\x01\x9a\x00\x58\x01\x08\x01\x59\x01\x5a\x01\x00\x00\x00\x00\x00\x00\x53\x01\x00\x00\xf1\x00\x56\x01\x65\x00\xec\x00\x00\x00\x00\x00\x00\x00\x1d\x01\x00\x00\x7d\x00\xae\x00\xfb\x00\x00\x00\x22\x01\xe4\x00\x05\x01\xda\x00\xb0\x00\xf2\x00\x7d\x00\xaf\x00\xb2\x00\xd6\x00\x00\x00\xac\x00\x00\x00\x00\x00\x00\x00\xd6\x00\xdb\x00\xdd\x00\x00\x00\x00\x00\x7d\x00\xde\x00\x61\x00\x00\x00\x00\x00\x00\x00\x5c\x00\x00\x00\x00\x00\x65\x00\xe4\x00\xa3\x00\x79\x00\xe6\x00\xe9\x00\x7d\x00\x80\x00\x61\x00\x5c\x00\x65\x00\x58\x00\x50\x00\x61\x00\xa2\x00\x68\x00\x57\x00\x91\x00\x94\x00\x6a\x00\xac\x00\x6b\x00\x6c\x00\x6d\x00\x50\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x70\x00\x79\x00\x74\x00\x00\x00\x00\x00\x75\x00\x00\x00\x00\x00\x00\x00\x7a\x00\x3b\x00\x3e\x00\x3c\x00\x3d\x00\x40\x00\x3f\x00\x43\x00\x41\x00\x42\x00\x44\x00\x45\x00\x46\x00\x4a\x00\xff\xff\x50\x00\x57\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x33\x00\x00\x00\x34\x00\x35\x00\x36\x00\x00\x00\x37\x00\x00\x00\x38\x00\xff\xff\x39\x00\xff\xff\x3a\x00\xff\xff\x0d\x00\xff\xff\x0f\x00\xff\xff\x11\x00\x13\x00\x15\x00\x17\x00\x19\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"#

happyReduceArr = Happy_Data_Array.array (9, 220) [
	(9 , happyReduce_9),
	(10 , happyReduce_10),
	(11 , happyReduce_11),
	(12 , happyReduce_12),
	(13 , happyReduce_13),
	(14 , happyReduce_14),
	(15 , happyReduce_15),
	(16 , happyReduce_16),
	(17 , happyReduce_17),
	(18 , happyReduce_18),
	(19 , happyReduce_19),
	(20 , happyReduce_20),
	(21 , happyReduce_21),
	(22 , happyReduce_22),
	(23 , happyReduce_23),
	(24 , happyReduce_24),
	(25 , happyReduce_25),
	(26 , happyReduce_26),
	(27 , happyReduce_27),
	(28 , happyReduce_28),
	(29 , happyReduce_29),
	(30 , happyReduce_30),
	(31 , happyReduce_31),
	(32 , happyReduce_32),
	(33 , happyReduce_33),
	(34 , happyReduce_34),
	(35 , happyReduce_35),
	(36 , happyReduce_36),
	(37 , happyReduce_37),
	(38 , happyReduce_38),
	(39 , happyReduce_39),
	(40 , happyReduce_40),
	(41 , happyReduce_41),
	(42 , happyReduce_42),
	(43 , happyReduce_43),
	(44 , happyReduce_44),
	(45 , happyReduce_45),
	(46 , happyReduce_46),
	(47 , happyReduce_47),
	(48 , happyReduce_48),
	(49 , happyReduce_49),
	(50 , happyReduce_50),
	(51 , happyReduce_51),
	(52 , happyReduce_52),
	(53 , happyReduce_53),
	(54 , happyReduce_54),
	(55 , happyReduce_55),
	(56 , happyReduce_56),
	(57 , happyReduce_57),
	(58 , happyReduce_58),
	(59 , happyReduce_59),
	(60 , happyReduce_60),
	(61 , happyReduce_61),
	(62 , happyReduce_62),
	(63 , happyReduce_63),
	(64 , happyReduce_64),
	(65 , happyReduce_65),
	(66 , happyReduce_66),
	(67 , happyReduce_67),
	(68 , happyReduce_68),
	(69 , happyReduce_69),
	(70 , happyReduce_70),
	(71 , happyReduce_71),
	(72 , happyReduce_72),
	(73 , happyReduce_73),
	(74 , happyReduce_74),
	(75 , happyReduce_75),
	(76 , happyReduce_76),
	(77 , happyReduce_77),
	(78 , happyReduce_78),
	(79 , happyReduce_79),
	(80 , happyReduce_80),
	(81 , happyReduce_81),
	(82 , happyReduce_82),
	(83 , happyReduce_83),
	(84 , happyReduce_84),
	(85 , happyReduce_85),
	(86 , happyReduce_86),
	(87 , happyReduce_87),
	(88 , happyReduce_88),
	(89 , happyReduce_89),
	(90 , happyReduce_90),
	(91 , happyReduce_91),
	(92 , happyReduce_92),
	(93 , happyReduce_93),
	(94 , happyReduce_94),
	(95 , happyReduce_95),
	(96 , happyReduce_96),
	(97 , happyReduce_97),
	(98 , happyReduce_98),
	(99 , happyReduce_99),
	(100 , happyReduce_100),
	(101 , happyReduce_101),
	(102 , happyReduce_102),
	(103 , happyReduce_103),
	(104 , happyReduce_104),
	(105 , happyReduce_105),
	(106 , happyReduce_106),
	(107 , happyReduce_107),
	(108 , happyReduce_108),
	(109 , happyReduce_109),
	(110 , happyReduce_110),
	(111 , happyReduce_111),
	(112 , happyReduce_112),
	(113 , happyReduce_113),
	(114 , happyReduce_114),
	(115 , happyReduce_115),
	(116 , happyReduce_116),
	(117 , happyReduce_117),
	(118 , happyReduce_118),
	(119 , happyReduce_119),
	(120 , happyReduce_120),
	(121 , happyReduce_121),
	(122 , happyReduce_122),
	(123 , happyReduce_123),
	(124 , happyReduce_124),
	(125 , happyReduce_125),
	(126 , happyReduce_126),
	(127 , happyReduce_127),
	(128 , happyReduce_128),
	(129 , happyReduce_129),
	(130 , happyReduce_130),
	(131 , happyReduce_131),
	(132 , happyReduce_132),
	(133 , happyReduce_133),
	(134 , happyReduce_134),
	(135 , happyReduce_135),
	(136 , happyReduce_136),
	(137 , happyReduce_137),
	(138 , happyReduce_138),
	(139 , happyReduce_139),
	(140 , happyReduce_140),
	(141 , happyReduce_141),
	(142 , happyReduce_142),
	(143 , happyReduce_143),
	(144 , happyReduce_144),
	(145 , happyReduce_145),
	(146 , happyReduce_146),
	(147 , happyReduce_147),
	(148 , happyReduce_148),
	(149 , happyReduce_149),
	(150 , happyReduce_150),
	(151 , happyReduce_151),
	(152 , happyReduce_152),
	(153 , happyReduce_153),
	(154 , happyReduce_154),
	(155 , happyReduce_155),
	(156 , happyReduce_156),
	(157 , happyReduce_157),
	(158 , happyReduce_158),
	(159 , happyReduce_159),
	(160 , happyReduce_160),
	(161 , happyReduce_161),
	(162 , happyReduce_162),
	(163 , happyReduce_163),
	(164 , happyReduce_164),
	(165 , happyReduce_165),
	(166 , happyReduce_166),
	(167 , happyReduce_167),
	(168 , happyReduce_168),
	(169 , happyReduce_169),
	(170 , happyReduce_170),
	(171 , happyReduce_171),
	(172 , happyReduce_172),
	(173 , happyReduce_173),
	(174 , happyReduce_174),
	(175 , happyReduce_175),
	(176 , happyReduce_176),
	(177 , happyReduce_177),
	(178 , happyReduce_178),
	(179 , happyReduce_179),
	(180 , happyReduce_180),
	(181 , happyReduce_181),
	(182 , happyReduce_182),
	(183 , happyReduce_183),
	(184 , happyReduce_184),
	(185 , happyReduce_185),
	(186 , happyReduce_186),
	(187 , happyReduce_187),
	(188 , happyReduce_188),
	(189 , happyReduce_189),
	(190 , happyReduce_190),
	(191 , happyReduce_191),
	(192 , happyReduce_192),
	(193 , happyReduce_193),
	(194 , happyReduce_194),
	(195 , happyReduce_195),
	(196 , happyReduce_196),
	(197 , happyReduce_197),
	(198 , happyReduce_198),
	(199 , happyReduce_199),
	(200 , happyReduce_200),
	(201 , happyReduce_201),
	(202 , happyReduce_202),
	(203 , happyReduce_203),
	(204 , happyReduce_204),
	(205 , happyReduce_205),
	(206 , happyReduce_206),
	(207 , happyReduce_207),
	(208 , happyReduce_208),
	(209 , happyReduce_209),
	(210 , happyReduce_210),
	(211 , happyReduce_211),
	(212 , happyReduce_212),
	(213 , happyReduce_213),
	(214 , happyReduce_214),
	(215 , happyReduce_215),
	(216 , happyReduce_216),
	(217 , happyReduce_217),
	(218 , happyReduce_218),
	(219 , happyReduce_219),
	(220 , happyReduce_220)
	]

happy_n_terms = 95 :: Int
happy_n_nonterms = 106 :: Int

happyReduce_9 = happySpecReduce_1  0# happyReduction_9
happyReduction_9 happy_x_1
	 =  happyIn12
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = ()  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)

happyReduce_10 = happySpecReduce_1  1# happyReduction_10
happyReduction_10 happy_x_1
	 =  happyIn13
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = ()  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)

happyReduce_11 = happySpecReduce_1  2# happyReduction_11
happyReduction_11 happy_x_1
	 =  happyIn14
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = ()  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)

happyReduce_12 = happySpecReduce_1  3# happyReduction_12
happyReduction_12 happy_x_1
	 =  case happyOut16 happy_x_1 of { happy_var_1 -> 
	happyIn15
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = ( ( (synMaxUid happySelfAttrs) +1), TxsDefs.fromList ( (parseVal happySubAttrs_1) ++ stdTDefs ), (inhSigs happySubAttrs_1) ) , synMaxUid = (synMaxUid happySubAttrs_1) , inhNodeUid = 1000  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = Sigs.uniqueCombine Sigs.empty { Sigs.sort =stdSortTable , Sigs.func =stdFuncTable } (synSigs happySubAttrs_1)  }; happyConditions = [let { tdefs =TxsDefs.fromList ( (parseVal happySubAttrs_1) ++ stdTDefs ) ; fids =checkENDECdefs tdefs } in if null fids then () else error $ "\nTXS0020: " ++ "Function(s) can only be used in EN/DECODING\n" ++ (fshow fids) ++ "\n" , let dbls =doubles (map (TxsDefs.unid . fst) ( (parseVal happySubAttrs_1) ++ stdTDefs)) in if null dbls then () else error $ "\nTXS ERROR 0010\n" , let dbls =doubles [ nm | (IdCnect (CnectId nm uid), DefCnect sutdef) <- (parseVal happySubAttrs_1) ] in if null dbls then () else error $ "\nTXS0019: " ++ "Double defined connections: "++(show dbls)++"\n" , let dbls =doubles [ nm | (IdMapper (MapperId nm uid), DefMapper mapperdef) <- (parseVal happySubAttrs_1) ] in if null dbls then () else error $ "\nTXS0018: " ++ "Double defined mappers: "++(show dbls)++"\n" , let dbls =doubles [ nm | (IdPurp (PurpId nm uid), DefPurp purpdef) <- (parseVal happySubAttrs_1) ] in if null dbls then () else error $ "\nTXS0017: " ++ "Double defined test purposes: "++(show dbls)++"\n" , let dbls =doubles [ nm | (IdModel (ModelId nm uid), DefModel modeldef) <- (parseVal happySubAttrs_1) ] in if null dbls then () else error $ "\nTXS0016: " ++ "Double defined models: "++(show dbls)++"\n" ]++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_13 = happySpecReduce_0  4# happyReduction_13
happyReduction_13  =  happyIn16
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [] , synSigs = Sigs.empty , synMaxUid = (inhNodeUid happySelfAttrs)  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)

happyReduce_14 = happySpecReduce_2  4# happyReduction_14
happyReduction_14 happy_x_2
	happy_x_1
	 =  case happyOut16 happy_x_1 of { happy_var_1 -> 
	case happyOut17 happy_x_2 of { happy_var_2 -> 
	happyIn16
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) ++ (parseVal happySubAttrs_2) , synSigs = Sigs.uniqueCombine (synSigs happySubAttrs_1) (synSigs happySubAttrs_2) , synMaxUid = (synMaxUid happySubAttrs_2)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1++happyConditions_2 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_15 = happySpecReduce_1  5# happyReduction_15
happyReduction_15 happy_x_1
	 =  case happyOut18 happy_x_1 of { happy_var_1 -> 
	happyIn17
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) , synSigs = (synSigs happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_16 = happySpecReduce_1  5# happyReduction_16
happyReduction_16 happy_x_1
	 =  case happyOut26 happy_x_1 of { happy_var_1 -> 
	happyIn17
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) , synSigs = (synSigs happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_17 = happySpecReduce_1  5# happyReduction_17
happyReduction_17 happy_x_1
	 =  case happyOut30 happy_x_1 of { happy_var_1 -> 
	happyIn17
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) , synSigs = (synSigs happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_18 = happySpecReduce_1  5# happyReduction_18
happyReduction_18 happy_x_1
	 =  case happyOut34 happy_x_1 of { happy_var_1 -> 
	happyIn17
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) , synSigs = (synSigs happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_19 = happySpecReduce_1  5# happyReduction_19
happyReduction_19 happy_x_1
	 =  case happyOut37 happy_x_1 of { happy_var_1 -> 
	happyIn17
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [ (parseVal happySubAttrs_1) ] , synSigs = (synSigs happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_20 = happySpecReduce_1  5# happyReduction_20
happyReduction_20 happy_x_1
	 =  case happyOut38 happy_x_1 of { happy_var_1 -> 
	happyIn17
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [] , synSigs = (synSigs happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_21 = happySpecReduce_1  5# happyReduction_21
happyReduction_21 happy_x_1
	 =  case happyOut39 happy_x_1 of { happy_var_1 -> 
	happyIn17
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [ (parseVal happySubAttrs_1) ] , synSigs = (synSigs happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_22 = happySpecReduce_1  5# happyReduction_22
happyReduction_22 happy_x_1
	 =  case happyOut40 happy_x_1 of { happy_var_1 -> 
	happyIn17
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [ (parseVal happySubAttrs_1) ] , synSigs = (synSigs happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_23 = happySpecReduce_1  5# happyReduction_23
happyReduction_23 happy_x_1
	 =  case happyOut43 happy_x_1 of { happy_var_1 -> 
	happyIn17
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [ (parseVal happySubAttrs_1) ] , synSigs = (synSigs happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_24 = happySpecReduce_1  5# happyReduction_24
happyReduction_24 happy_x_1
	 =  case happyOut44 happy_x_1 of { happy_var_1 -> 
	happyIn17
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [ (parseVal happySubAttrs_1) ] , synSigs = (synSigs happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_25 = happySpecReduce_3  6# happyReduction_25
happyReduction_25 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut19 happy_x_2 of { happy_var_2 -> 
	case happyOut12 happy_x_3 of { happy_var_3 -> 
	happyIn18
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_2) , synSigs = (synSigs happySubAttrs_2) , synMaxUid = (synMaxUid happySubAttrs_2)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs; happyConditions = []++happyConditions_2++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_26 = happySpecReduce_1  7# happyReduction_26
happyReduction_26 happy_x_1
	 =  case happyOut20 happy_x_1 of { happy_var_1 -> 
	happyIn19
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) , synSigs = (synSigs happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_27 = happySpecReduce_3  7# happyReduction_27
happyReduction_27 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut19 happy_x_1 of { happy_var_1 -> 
	case happyOut20 happy_x_3 of { happy_var_3 -> 
	happyIn19
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) ++ (parseVal happySubAttrs_3) , synSigs = Sigs.uniqueCombine (synSigs happySubAttrs_1) (synSigs happySubAttrs_3) , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_28 = happySpecReduce_3  8# happyReduction_28
happyReduction_28 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOutTok happy_x_1 of { (Tcapid            poscapid    happy_var_1) -> 
	case happyOut21 happy_x_3 of { happy_var_3 -> 
	happyIn20
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_3) ++ [ ( IdSort (SortId happy_var_1 (inhNodeUid happySelfAttrs) ), DefSort (SortDef) ) ] , synSigs = let dsort =SortId happy_var_1 (inhNodeUid happySelfAttrs) in Sigs.uniqueCombine Sigs.empty { Sigs.sort =Map.singleton happy_var_1 dsort , Sigs.func =FuncTable (Map.fromList [ (eqName, Map.singleton (Signature [dsort,dsort] sortId_Bool) equalHandler) , (neqName, Map.singleton (Signature [dsort,dsort] sortId_Bool) notEqualHandler) , (toStringName, Map.singleton (Signature [dsort] sortId_String) (cstrPredef AST (FuncId toStringName ( (inhNodeUid happySelfAttrs) +3) [dsort] sortId_String) ) ) , (fromStringName, Map.singleton (Signature [sortId_String] dsort) (cstrPredef ASF (FuncId fromStringName ( (inhNodeUid happySelfAttrs) +4) [sortId_String] dsort) ) ) , (toXmlName, Map.singleton (Signature [dsort] sortId_String) (cstrPredef AXT (FuncId toStringName ( (inhNodeUid happySelfAttrs) +5) [dsort] sortId_String) ) ) , (fromXmlName, Map.singleton (Signature [sortId_String] dsort) (cstrPredef AXF (FuncId fromStringName ( (inhNodeUid happySelfAttrs) +6) [sortId_String] dsort) ) ) ] ) } (synSigs happySubAttrs_3) , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 15 , inhDefgSort = SortId happy_var_1 (inhNodeUid happySelfAttrs)  }; happyConditions = []++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_29 = happySpecReduce_0  9# happyReduction_29
happyReduction_29  =  happyIn21
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [] , synSigs = Sigs.empty , synMaxUid = (inhNodeUid happySelfAttrs)  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)

happyReduce_30 = happySpecReduce_1  9# happyReduction_30
happyReduction_30 happy_x_1
	 =  case happyOut22 happy_x_1 of { happy_var_1 -> 
	happyIn21
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) , synSigs = (synSigs happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhDefgSort = (inhDefgSort happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_31 = happySpecReduce_3  9# happyReduction_31
happyReduction_31 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut21 happy_x_1 of { happy_var_1 -> 
	case happyOut22 happy_x_3 of { happy_var_3 -> 
	happyIn21
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) ++ (parseVal happySubAttrs_3) , synSigs = Sigs.uniqueCombine (synSigs happySubAttrs_1) (synSigs happySubAttrs_3) , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhDefgSort = (inhDefgSort happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhDefgSort = (inhDefgSort happySelfAttrs)  }; happyConditions = []++happyConditions_1++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_32 = happySpecReduce_2  10# happyReduction_32
happyReduction_32 happy_x_2
	happy_x_1
	 =  case happyOutTok happy_x_1 of { (Tcapid            poscapid    happy_var_1) -> 
	case happyOut23 happy_x_2 of { happy_var_2 -> 
	happyIn22
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = let { cas =map snd (parseVal happySubAttrs_2) ; cid =CstrId happy_var_1 (inhNodeUid happySelfAttrs) cas (inhDefgSort happySelfAttrs) ; cfid =FuncId ("is" <> happy_var_1 ) ( (inhNodeUid happySelfAttrs) +1) [ (inhDefgSort happySelfAttrs) ] sortId_Bool ; x =VarId "x" ( (inhNodeUid happySelfAttrs) +2) (inhDefgSort happySelfAttrs) ; fs =[ let y =VarId "y" vid (inhDefgSort happySelfAttrs) in (IdFunc (FuncId nm uid [ (inhDefgSort happySelfAttrs) ] s), DefFunc (FuncDef [y] (cstrAccess cid pos (cstrVar y)))) | ((nm,s), pos, uid, vid) <- List.zip4 (parseVal happySubAttrs_2) [0..] [( (inhNodeUid happySelfAttrs) + 3)..] [( (inhNodeUid happySelfAttrs) +3 + length (parseVal happySubAttrs_2) )..] ] } in [ ( IdCstr cid, DefCstr (CstrDef cfid (map (\(IdFunc f,_) -> f) fs) ) ) , ( IdFunc cfid, DefFunc (FuncDef [x] (cstrIsCstr cid (cstrVar x) ) ) ) ] ++ fs , synSigs = let { cas =map snd (parseVal happySubAttrs_2) ; cid =CstrId happy_var_1 (inhNodeUid happySelfAttrs) cas (inhDefgSort happySelfAttrs) } in Sigs.empty { Sigs.func =FuncTable( Map.fromList $ [( happy_var_1 , Map.singleton (Signature cas (inhDefgSort happySelfAttrs) ) (cstrHandler cid)) ,("is" <> happy_var_1 , Map.singleton (Signature [ (inhDefgSort happySelfAttrs) ] sortId_Bool) (iscstrHandler cid)) ] ++ [ ( nm , Map.singleton (Signature [ (inhDefgSort happySelfAttrs) ] s) (accessHandler cid pos) ) | ((nm,s),pos) <- zip (parseVal happySubAttrs_2) [0..] ] ) } , synMaxUid = (synMaxUid happySubAttrs_2)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 2*(length (parseVal happySubAttrs_2) ) + 3 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = [let dbls =doubles ([ happy_var_1 , "is" <> happy_var_1 ] ++ map fst (parseVal happySubAttrs_2) ) in if null dbls then () else error $ "\nTXS0803: " ++ "Double defined names: "++(show dbls)++"\n" ]++happyConditions_2 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_33 = happySpecReduce_0  11# happyReduction_33
happyReduction_33  =  happyIn23
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [] , synMaxUid = (inhNodeUid happySelfAttrs)  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)

happyReduce_34 = happySpecReduce_2  11# happyReduction_34
happyReduction_34 happy_x_2
	happy_x_1
	 =  happyIn23
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [] , synMaxUid = (inhNodeUid happySelfAttrs)  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)

happyReduce_35 = happySpecReduce_3  11# happyReduction_35
happyReduction_35 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut24 happy_x_2 of { happy_var_2 -> 
	happyIn23
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_2) , synMaxUid = (synMaxUid happySubAttrs_2)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_2 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_36 = happySpecReduce_1  12# happyReduction_36
happyReduction_36 happy_x_1
	 =  case happyOut25 happy_x_1 of { happy_var_1 -> 
	happyIn24
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_37 = happySpecReduce_3  12# happyReduction_37
happyReduction_37 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut24 happy_x_1 of { happy_var_1 -> 
	case happyOut25 happy_x_3 of { happy_var_3 -> 
	happyIn24
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) ++ (parseVal happySubAttrs_3) , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = [let dbls =doubles (map fst ( (parseVal happySubAttrs_1) ++ (parseVal happySubAttrs_3) )) in if null dbls then () else error $ "\nTXS0802: " ++ "Double defined fields: "++(show dbls)++"\n" ]++happyConditions_1++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_38 = happySpecReduce_2  13# happyReduction_38
happyReduction_38 happy_x_2
	happy_x_1
	 =  case happyOut103 happy_x_1 of { happy_var_1 -> 
	case happyOut56 happy_x_2 of { happy_var_2 -> 
	happyIn25
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [ (nm, (parseVal happySubAttrs_2) ) | nm <- (parseVal happySubAttrs_1) ] , synMaxUid = (inhNodeUid happySelfAttrs)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = [let dbls =doubles (parseVal happySubAttrs_1) in if null dbls then () else error $ "\nTXS0801: " ++ "Double defined fields: "++(show dbls)++"\n" ]++happyConditions_1++happyConditions_2 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_39 = happySpecReduce_3  14# happyReduction_39
happyReduction_39 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut27 happy_x_2 of { happy_var_2 -> 
	case happyOut12 happy_x_3 of { happy_var_3 -> 
	happyIn26
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_2) , synSigs = (synSigs happySubAttrs_2) , synMaxUid = (synMaxUid happySubAttrs_2)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs; happyConditions = []++happyConditions_2++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_40 = happySpecReduce_1  15# happyReduction_40
happyReduction_40 happy_x_1
	 =  case happyOut29 happy_x_1 of { happy_var_1 -> 
	happyIn27
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [ (parseVal happySubAttrs_1) ] , synSigs = (synSigs happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_41 = happySpecReduce_3  15# happyReduction_41
happyReduction_41 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut27 happy_x_1 of { happy_var_1 -> 
	case happyOut29 happy_x_3 of { happy_var_3 -> 
	happyIn27
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) ++ [ (parseVal happySubAttrs_3) ] , synSigs = Sigs.uniqueCombine (synSigs happySubAttrs_1) (synSigs happySubAttrs_3) , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_42 = happyReduce 4# 16# happyReduction_42
happyReduction_42 (happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOutTok happy_x_2 of { (Csigs             happy_var_2) -> 
	case happyOutTok happy_x_3 of { (Cunid             happy_var_3) -> 
	case happyOut29 happy_x_4 of { happy_var_4 -> 
	happyIn28
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = ( (synMaxUid happySubAttrs_4) , TxsDefs.fromList [ (parseVal happySubAttrs_4) ] )  }; (happyConditions_4,happySubAttrs_4) = happy_var_4 happyEmptyAttrs{ inhNodeUid = happy_var_3 , inhSigs = Sigs.uniqueCombine (synSigs happySubAttrs_4) happy_var_2  }; happyConditions = []++happyConditions_4 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}}

happyReduce_43 = happyReduce 5# 17# happyReduction_43
happyReduction_43 (happy_x_5 `HappyStk`
	happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOutTok happy_x_1 of { (Tsmallid          possmallid  happy_var_1) -> 
	case happyOut63 happy_x_2 of { happy_var_2 -> 
	case happyOut56 happy_x_3 of { happy_var_3 -> 
	case happyOut85 happy_x_5 of { happy_var_5 -> 
	happyIn29
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = ( IdFunc (FuncId happy_var_1 (inhNodeUid happySelfAttrs) (map varsort (parseVal happySubAttrs_2) ) (parseVal happySubAttrs_3) ), DefFunc (FuncDef (parseVal happySubAttrs_2) (parseVal happySubAttrs_5) ) ) , synSigs = Sigs.empty { Sigs.func =FuncTable (Map.singleton happy_var_1 (Map.singleton (Signature (map varsort (parseVal happySubAttrs_2) ) (parseVal happySubAttrs_3) ) ( cstrFunc (FuncId happy_var_1 (inhNodeUid happySelfAttrs) (map varsort (parseVal happySubAttrs_2) ) (parseVal happySubAttrs_3) ) ) ) ) } , synMaxUid = (synMaxUid happySubAttrs_5)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhNodeUid = (synMaxUid happySubAttrs_2) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; (happyConditions_5,happySubAttrs_5) = happy_var_5 happyEmptyAttrs{ inhVarSigs = (parseVal happySubAttrs_2) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_3) + 1 , inhSolvSort = Just (parseVal happySubAttrs_3)  }; happyConditions = []++happyConditions_2++happyConditions_3++happyConditions_5 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}}}

happyReduce_44 = happyReduce 5# 17# happyReduction_44
happyReduction_44 (happy_x_5 `HappyStk`
	happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOutTok happy_x_1 of { (Toperator         posoperator happy_var_1) -> 
	case happyOut63 happy_x_2 of { happy_var_2 -> 
	case happyOut56 happy_x_3 of { happy_var_3 -> 
	case happyOut85 happy_x_5 of { happy_var_5 -> 
	happyIn29
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = ( IdFunc (FuncId happy_var_1 (inhNodeUid happySelfAttrs) (map varsort (parseVal happySubAttrs_2) ) (parseVal happySubAttrs_3) ), DefFunc (FuncDef (parseVal happySubAttrs_2) (parseVal happySubAttrs_5) ) ) , synSigs = Sigs.empty { Sigs.func =FuncTable (Map.singleton happy_var_1 (Map.singleton (Signature (map varsort (parseVal happySubAttrs_2) ) (parseVal happySubAttrs_3) ) ( cstrFunc (FuncId happy_var_1 (inhNodeUid happySelfAttrs) (map varsort (parseVal happySubAttrs_2) ) (parseVal happySubAttrs_3) ) ) ) ) } , synMaxUid = (synMaxUid happySubAttrs_5)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhNodeUid = (synMaxUid happySubAttrs_2) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; (happyConditions_5,happySubAttrs_5) = happy_var_5 happyEmptyAttrs{ inhVarSigs = (parseVal happySubAttrs_2) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_3) + 1 , inhSolvSort = Just (parseVal happySubAttrs_3)  }; happyConditions = [if (length (parseVal happySubAttrs_2) ) ==1 || (length (parseVal happySubAttrs_2) ) ==2 then () else error $ "\nTXS0101: "++ "Operator shall have one or two arguments: '"++ show happy_var_1 ++"'\n" ]++happyConditions_2++happyConditions_3++happyConditions_5 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}}}

happyReduce_45 = happySpecReduce_3  18# happyReduction_45
happyReduction_45 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut31 happy_x_2 of { happy_var_2 -> 
	case happyOut12 happy_x_3 of { happy_var_3 -> 
	happyIn30
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_2) , synSigs = (synSigs happySubAttrs_2) , synMaxUid = (synMaxUid happySubAttrs_2)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs; happyConditions = []++happyConditions_2++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_46 = happySpecReduce_1  19# happyReduction_46
happyReduction_46 happy_x_1
	 =  case happyOut33 happy_x_1 of { happy_var_1 -> 
	happyIn31
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [ (parseVal happySubAttrs_1) ] , synSigs = (synSigs happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_47 = happySpecReduce_3  19# happyReduction_47
happyReduction_47 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut31 happy_x_1 of { happy_var_1 -> 
	case happyOut33 happy_x_3 of { happy_var_3 -> 
	happyIn31
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) ++ [ (parseVal happySubAttrs_3) ] , synSigs = Sigs.uniqueCombine (synSigs happySubAttrs_1) (synSigs happySubAttrs_3) , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_48 = happyReduce 4# 20# happyReduction_48
happyReduction_48 (happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOutTok happy_x_2 of { (Csigs             happy_var_2) -> 
	case happyOutTok happy_x_3 of { (Cunid             happy_var_3) -> 
	case happyOut33 happy_x_4 of { happy_var_4 -> 
	happyIn32
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = ( (synMaxUid happySubAttrs_4) , TxsDefs.fromList [ (parseVal happySubAttrs_4) ] )  }; (happyConditions_4,happySubAttrs_4) = happy_var_4 happyEmptyAttrs{ inhNodeUid = happy_var_3 , inhSigs = Sigs.uniqueCombine (synSigs happySubAttrs_4) happy_var_2  }; happyConditions = []++happyConditions_4 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}}

happyReduce_49 = happyReduce 4# 21# happyReduction_49
happyReduction_49 (happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOutTok happy_x_1 of { (Tsmallid          possmallid  happy_var_1) -> 
	case happyOut56 happy_x_2 of { happy_var_2 -> 
	case happyOut85 happy_x_4 of { happy_var_4 -> 
	happyIn33
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = ( IdFunc (FuncId happy_var_1 (inhNodeUid happySelfAttrs) [] (parseVal happySubAttrs_2) ), DefFunc (FuncDef [] (parseVal happySubAttrs_4) ) ) , synSigs = Sigs.empty { Sigs.func =FuncTable (Map.singleton happy_var_1 (Map.singleton (Signature [] (parseVal happySubAttrs_2) ) ( cstrFunc (FuncId happy_var_1 (inhNodeUid happySelfAttrs) [] (parseVal happySubAttrs_2) ) ) ) ) } , synMaxUid = (synMaxUid happySubAttrs_4)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; (happyConditions_4,happySubAttrs_4) = happy_var_4 happyEmptyAttrs{ inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_2) + 1 , inhSolvSort = Just (parseVal happySubAttrs_2)  }; happyConditions = []++happyConditions_2++happyConditions_4 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}}

happyReduce_50 = happySpecReduce_3  22# happyReduction_50
happyReduction_50 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut35 happy_x_2 of { happy_var_2 -> 
	case happyOut12 happy_x_3 of { happy_var_3 -> 
	happyIn34
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_2) , synSigs = (synSigs happySubAttrs_2) , synMaxUid = (synMaxUid happySubAttrs_2)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs; happyConditions = []++happyConditions_2++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_51 = happySpecReduce_1  23# happyReduction_51
happyReduction_51 happy_x_1
	 =  case happyOut36 happy_x_1 of { happy_var_1 -> 
	happyIn35
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [ (parseVal happySubAttrs_1) ] , synSigs = (synSigs happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_52 = happySpecReduce_3  23# happyReduction_52
happyReduction_52 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut35 happy_x_1 of { happy_var_1 -> 
	case happyOut36 happy_x_3 of { happy_var_3 -> 
	happyIn35
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) ++ [ (parseVal happySubAttrs_3) ] , synSigs = Sigs.combine (synSigs happySubAttrs_1) (synSigs happySubAttrs_3) , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_53 = happyReduce 6# 24# happyReduction_53
happyReduction_53 (happy_x_6 `HappyStk`
	happy_x_5 `HappyStk`
	happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOut95 happy_x_1 of { happy_var_1 -> 
	case happyOut59 happy_x_2 of { happy_var_2 -> 
	case happyOut63 happy_x_3 of { happy_var_3 -> 
	case happyOut55 happy_x_4 of { happy_var_4 -> 
	case happyOut69 happy_x_6 of { happy_var_6 -> 
	happyIn36
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = ( IdProc (ProcId (parseVal happySubAttrs_1) (inhNodeUid happySelfAttrs) (parseVal happySubAttrs_2) (parseVal happySubAttrs_3) (parseVal happySubAttrs_4) ), DefProc (ProcDef (parseVal happySubAttrs_2) (parseVal happySubAttrs_3) (parseVal happySubAttrs_6) ) ) , synSigs = Sigs.empty { Sigs.pro =[ ProcId (parseVal happySubAttrs_1) (inhNodeUid happySelfAttrs) (parseVal happySubAttrs_2) (parseVal happySubAttrs_3) (parseVal happySubAttrs_4) ] } , synMaxUid = (synMaxUid happySubAttrs_6)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhNodeUid = (synMaxUid happySubAttrs_2) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; (happyConditions_4,happySubAttrs_4) = happy_var_4 happyEmptyAttrs{ inhNodeUid = (synMaxUid happySubAttrs_3) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; (happyConditions_6,happySubAttrs_6) = happy_var_6 happyEmptyAttrs{ inhChanSigs = (parseVal happySubAttrs_2) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_4) + 1 , inhVarSigs = (parseVal happySubAttrs_3)  }; happyConditions = [if (synExitSorts happySubAttrs_6) ==(parseVal happySubAttrs_4) then () else error $ "\nTXS2242: " ++ "Defined exit kind does not match actual one: "++ show (parseVal happySubAttrs_1) ++"\n" ]++happyConditions_1++happyConditions_2++happyConditions_3++happyConditions_4++happyConditions_6 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}}}}

happyReduce_54 = happyReduce 8# 25# happyReduction_54
happyReduction_54 (happy_x_8 `HappyStk`
	happy_x_7 `HappyStk`
	happy_x_6 `HappyStk`
	happy_x_5 `HappyStk`
	happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOut95 happy_x_2 of { happy_var_2 -> 
	case happyOut59 happy_x_3 of { happy_var_3 -> 
	case happyOut63 happy_x_4 of { happy_var_4 -> 
	case happyOut55 happy_x_5 of { happy_var_5 -> 
	case happyOut104 happy_x_7 of { happy_var_7 -> 
	case happyOut12 happy_x_8 of { happy_var_8 -> 
	happyIn37
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = ( IdProc (ProcId (parseVal happySubAttrs_2) (inhNodeUid happySelfAttrs) (parseVal happySubAttrs_3) (parseVal happySubAttrs_4) (parseVal happySubAttrs_5) ), DefProc (ProcDef (parseVal happySubAttrs_3) (parseVal happySubAttrs_4) (parseVal happySubAttrs_7) ) ) , synSigs = Sigs.empty { Sigs.pro =[ ProcId (parseVal happySubAttrs_2) (inhNodeUid happySelfAttrs) (parseVal happySubAttrs_3) (parseVal happySubAttrs_4) (parseVal happySubAttrs_5) ] } , synMaxUid = (synMaxUid happySubAttrs_7)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; (happyConditions_4,happySubAttrs_4) = happy_var_4 happyEmptyAttrs{ inhNodeUid = (synMaxUid happySubAttrs_3) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; (happyConditions_5,happySubAttrs_5) = happy_var_5 happyEmptyAttrs{ inhNodeUid = (synMaxUid happySubAttrs_4) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; (happyConditions_7,happySubAttrs_7) = happy_var_7 happyEmptyAttrs{ inhChanSigs = (parseVal happySubAttrs_3) , inhSigs = (inhSigs happySelfAttrs) { Sigs.pro =[ ProcId (parseVal happySubAttrs_2) (inhNodeUid happySelfAttrs) (parseVal happySubAttrs_3) (parseVal happySubAttrs_4) (parseVal happySubAttrs_5) ] } , inhNodeUid = (synMaxUid happySubAttrs_5) + 1 , inhVarSigs = (parseVal happySubAttrs_4)  }; (happyConditions_8,happySubAttrs_8) = happy_var_8 happyEmptyAttrs; happyConditions = [if (synExitSorts happySubAttrs_7) ==(parseVal happySubAttrs_5) then () else error $ "\nTXS2244: " ++ "Defined exit kind does not match actual one: "++ show (parseVal happySubAttrs_2) ++"\n" ]++happyConditions_2++happyConditions_3++happyConditions_4++happyConditions_5++happyConditions_7++happyConditions_8 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}}}}}

happyReduce_55 = happyReduce 5# 26# happyReduction_55
happyReduction_55 (happy_x_5 `HappyStk`
	happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOut60 happy_x_4 of { happy_var_4 -> 
	case happyOut12 happy_x_5 of { happy_var_5 -> 
	happyIn38
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [] , synSigs = Sigs.empty { Sigs.chan =(parseVal happySubAttrs_4) } , synMaxUid = (synMaxUid happySubAttrs_4)  }; (happyConditions_4,happySubAttrs_4) = happy_var_4 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; (happyConditions_5,happySubAttrs_5) = happy_var_5 happyEmptyAttrs; happyConditions = [let dbls =doubles (map ( sig . IdChan ) (parseVal happySubAttrs_4) ) in if null dbls then () else error $ "\nTXS0536: " ++ "Double defined channels: "++ show dbls ++"\n" ]++happyConditions_4++happyConditions_5 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}

happyReduce_56 = happyReduce 13# 27# happyReduction_56
happyReduction_56 (happy_x_13 `HappyStk`
	happy_x_12 `HappyStk`
	happy_x_11 `HappyStk`
	happy_x_10 `HappyStk`
	happy_x_9 `HappyStk`
	happy_x_8 `HappyStk`
	happy_x_7 `HappyStk`
	happy_x_6 `HappyStk`
	happy_x_5 `HappyStk`
	happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOutTok happy_x_2 of { (Tcapid            poscapid    happy_var_2) -> 
	case happyOut75 happy_x_6 of { happy_var_6 -> 
	case happyOut75 happy_x_9 of { happy_var_9 -> 
	case happyOut52 happy_x_10 of { happy_var_10 -> 
	case happyOut69 happy_x_12 of { happy_var_12 -> 
	case happyOut12 happy_x_13 of { happy_var_13 -> 
	happyIn39
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = let { insyncs =[ chset | chset <- (parseVal happySubAttrs_10) , chset `Set.isSubsetOf` (Set.fromList (parseVal happySubAttrs_6) ) ] ; outsyncs =[ chset | chset <- (parseVal happySubAttrs_10) , chset `Set.isSubsetOf` (Set.fromList (parseVal happySubAttrs_9) ) ] ; errsyncs =[ chset | chset <- (parseVal happySubAttrs_10) , not $ chset `Set.isSubsetOf` (Set.fromList (parseVal happySubAttrs_6) ) , not $ chset `Set.isSubsetOf` (Set.fromList (parseVal happySubAttrs_9) ) ] ; splsyncs =case (synExitSorts happySubAttrs_12) of { NoExit -> [] ; Exit [] -> [ Set.singleton chanId_Exit ] ; _ -> error $ "\nTXS0540: Exit-kind " ++ "in ModelDef shall be EXIT or NOEXIT\n" } } in if null errsyncs then ( IdModel (ModelId happy_var_2 (inhNodeUid happySelfAttrs) ) , DefModel (ModelDef insyncs outsyncs splsyncs (parseVal happySubAttrs_12) ) ) else error $ "\nTXS0541: "++ "ModelDef Channelset shall be input xor output\n" , synSigs = Sigs.empty , synMaxUid = (synMaxUid happySubAttrs_12)  }; (happyConditions_6,happySubAttrs_6) = happy_var_6 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhChanSigs = Sigs.chan (inhSigs happySelfAttrs)  }; (happyConditions_9,happySubAttrs_9) = happy_var_9 happyEmptyAttrs{ inhNodeUid = (synMaxUid happySubAttrs_6) + 1 , inhChanSigs = Sigs.chan (inhSigs happySelfAttrs)  }; (happyConditions_10,happySubAttrs_10) = happy_var_10 happyEmptyAttrs{ inhNodeUid = (synMaxUid happySubAttrs_9) + 1 , inhChanSigs = (synChanSigs happySubAttrs_6) ++ (synChanSigs happySubAttrs_9)  }; (happyConditions_12,happySubAttrs_12) = happy_var_12 happyEmptyAttrs{ inhChanSigs = (synChanSigs happySubAttrs_6) ++ (synChanSigs happySubAttrs_9) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_10) + 1 , inhVarSigs = []  }; (happyConditions_13,happySubAttrs_13) = happy_var_13 happyEmptyAttrs; happyConditions = [let dbls =doubles ( map ChanId.name ( (synChanSigs happySubAttrs_6) ++ (synChanSigs happySubAttrs_9) ) ) in if null dbls then () else error $ "\nTXS0542: "++ "Double used channels in model: "++(show dbls)++"\n" ]++happyConditions_6++happyConditions_9++happyConditions_10++happyConditions_12++happyConditions_13 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}}}}}

happyReduce_57 = happyReduce 12# 28# happyReduction_57
happyReduction_57 (happy_x_12 `HappyStk`
	happy_x_11 `HappyStk`
	happy_x_10 `HappyStk`
	happy_x_9 `HappyStk`
	happy_x_8 `HappyStk`
	happy_x_7 `HappyStk`
	happy_x_6 `HappyStk`
	happy_x_5 `HappyStk`
	happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOutTok happy_x_2 of { (Tcapid            poscapid    happy_var_2) -> 
	case happyOut75 happy_x_6 of { happy_var_6 -> 
	case happyOut75 happy_x_9 of { happy_var_9 -> 
	case happyOut52 happy_x_10 of { happy_var_10 -> 
	case happyOut41 happy_x_11 of { happy_var_11 -> 
	case happyOut12 happy_x_12 of { happy_var_12 -> 
	happyIn40
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = let { insyncs =[ chset | chset <- (parseVal happySubAttrs_10) , chset `Set.isSubsetOf` (Set.fromList (parseVal happySubAttrs_6) ) ] ; outsyncs =[ chset | chset <- (parseVal happySubAttrs_10) , chset `Set.isSubsetOf` (Set.fromList (parseVal happySubAttrs_9) ) ] ; errsyncs =[ chset | chset <- (parseVal happySubAttrs_10) , not $ chset `Set.isSubsetOf` (Set.fromList (parseVal happySubAttrs_6) ) , not $ chset `Set.isSubsetOf` (Set.fromList (parseVal happySubAttrs_9) ) ] ; splsyncs =[ Set.singleton chanId_Qstep , Set.singleton chanId_Hit , Set.singleton chanId_Miss ] } in if null errsyncs then ( IdPurp (PurpId happy_var_2 (inhNodeUid happySelfAttrs) ) , DefPurp (PurpDef insyncs outsyncs splsyncs (parseVal happySubAttrs_11) ) ) else error $ "\nTXS0546: "++ "PurpDef Channelset shall be input xor output\n" , synSigs = Sigs.empty , synMaxUid = (synMaxUid happySubAttrs_11)  }; (happyConditions_6,happySubAttrs_6) = happy_var_6 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhChanSigs = Sigs.chan (inhSigs happySelfAttrs)  }; (happyConditions_9,happySubAttrs_9) = happy_var_9 happyEmptyAttrs{ inhNodeUid = (synMaxUid happySubAttrs_6) + 1 , inhChanSigs = Sigs.chan (inhSigs happySelfAttrs)  }; (happyConditions_10,happySubAttrs_10) = happy_var_10 happyEmptyAttrs{ inhNodeUid = (synMaxUid happySubAttrs_9) + 1 , inhChanSigs = (synChanSigs happySubAttrs_6) ++ (synChanSigs happySubAttrs_9)  }; (happyConditions_11,happySubAttrs_11) = happy_var_11 happyEmptyAttrs{ inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_10) + 1 , inhChanSigs = (synChanSigs happySubAttrs_6) ++ (synChanSigs happySubAttrs_9)  }; (happyConditions_12,happySubAttrs_12) = happy_var_12 happyEmptyAttrs; happyConditions = [let dbls =doubles ( map ChanId.name ( (synChanSigs happySubAttrs_6) ++ (synChanSigs happySubAttrs_9) ) ) in if null dbls then () else error $ "\nTXS0547: "++ "Double used channels in purpose: "++(show dbls)++"\n" ]++happyConditions_6++happyConditions_9++happyConditions_10++happyConditions_11++happyConditions_12 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}}}}}

happyReduce_58 = happySpecReduce_1  29# happyReduction_58
happyReduction_58 happy_x_1
	 =  case happyOut42 happy_x_1 of { happy_var_1 -> 
	happyIn41
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [ (parseVal happySubAttrs_1) ] , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhChanSigs = (inhChanSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_59 = happySpecReduce_2  29# happyReduction_59
happyReduction_59 happy_x_2
	happy_x_1
	 =  case happyOut41 happy_x_1 of { happy_var_1 -> 
	case happyOut42 happy_x_2 of { happy_var_2 -> 
	happyIn41
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) ++ [ (parseVal happySubAttrs_2) ] , synMaxUid = (synMaxUid happySubAttrs_2)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhChanSigs = (inhChanSigs happySelfAttrs)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhChanSigs = (inhChanSigs happySelfAttrs)  }; happyConditions = [if (GoalId.name . fst) (parseVal happySubAttrs_2) `notElem` map (GoalId.name . fst) (parseVal happySubAttrs_1) then () else error $ "\nTXS0551: "++ "Double defined goal names in test purpose\n" ]++happyConditions_1++happyConditions_2 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_60 = happyReduce 4# 30# happyReduction_60
happyReduction_60 (happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOut95 happy_x_2 of { happy_var_2 -> 
	case happyOut69 happy_x_4 of { happy_var_4 -> 
	happyIn42
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = ( GoalId (parseVal happySubAttrs_2) (inhNodeUid happySelfAttrs) , (parseVal happySubAttrs_4) ) , synMaxUid = (synMaxUid happySubAttrs_4)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs; (happyConditions_4,happySubAttrs_4) = happy_var_4 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = []  }; happyConditions = [if (synExitSorts happySubAttrs_4) ==Hit then () else error $ "\nTXS0550: "++ "Exit-kind in Purpose Definition shall be HIT\n" ]++happyConditions_2++happyConditions_4 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}

happyReduce_61 = happyReduce 13# 31# happyReduction_61
happyReduction_61 (happy_x_13 `HappyStk`
	happy_x_12 `HappyStk`
	happy_x_11 `HappyStk`
	happy_x_10 `HappyStk`
	happy_x_9 `HappyStk`
	happy_x_8 `HappyStk`
	happy_x_7 `HappyStk`
	happy_x_6 `HappyStk`
	happy_x_5 `HappyStk`
	happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOutTok happy_x_2 of { (Tcapid            poscapid    happy_var_2) -> 
	case happyOut75 happy_x_6 of { happy_var_6 -> 
	case happyOut75 happy_x_9 of { happy_var_9 -> 
	case happyOut52 happy_x_10 of { happy_var_10 -> 
	case happyOut69 happy_x_12 of { happy_var_12 -> 
	case happyOut12 happy_x_13 of { happy_var_13 -> 
	happyIn43
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = ( IdMapper (MapperId happy_var_2 (inhNodeUid happySelfAttrs) ) , DefMapper (MapperDef (parseVal happySubAttrs_6) (parseVal happySubAttrs_9) (parseVal happySubAttrs_10) (parseVal happySubAttrs_12) ) ) , synSigs = Sigs.empty , synMaxUid = (synMaxUid happySubAttrs_12)  }; (happyConditions_6,happySubAttrs_6) = happy_var_6 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhChanSigs = Sigs.chan (inhSigs happySelfAttrs)  }; (happyConditions_9,happySubAttrs_9) = happy_var_9 happyEmptyAttrs{ inhNodeUid = (synMaxUid happySubAttrs_6) + 1 , inhChanSigs = Sigs.chan (inhSigs happySelfAttrs)  }; (happyConditions_10,happySubAttrs_10) = happy_var_10 happyEmptyAttrs{ inhNodeUid = (synMaxUid happySubAttrs_9) + 1 , inhChanSigs = (synChanSigs happySubAttrs_6) ++ (synChanSigs happySubAttrs_9)  }; (happyConditions_12,happySubAttrs_12) = happy_var_12 happyEmptyAttrs{ inhChanSigs = (synChanSigs happySubAttrs_6) ++ (synChanSigs happySubAttrs_9) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_10) + 1 , inhVarSigs = []  }; (happyConditions_13,happySubAttrs_13) = happy_var_13 happyEmptyAttrs; happyConditions = [let dbls =doubles ( map ChanId.name ( (synChanSigs happySubAttrs_6) ++ (synChanSigs happySubAttrs_9) ) ) in if null dbls then () else error $ "\nTXS0556: "++ "Double used channels in mapper: "++(show dbls)++"\n" , if (synExitSorts happySubAttrs_12) ==NoExit then () else error $ "\nTXS0555: "++ "Exit-kind in MapperDef shall be NOEXIT\n" ]++happyConditions_6++happyConditions_9++happyConditions_10++happyConditions_12++happyConditions_13 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}}}}}

happyReduce_62 = happyReduce 6# 32# happyReduction_62
happyReduction_62 (happy_x_6 `HappyStk`
	happy_x_5 `HappyStk`
	happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOutTok happy_x_2 of { (Tcapid            poscapid    happy_var_2) -> 
	case happyOut45 happy_x_4 of { happy_var_4 -> 
	case happyOut46 happy_x_5 of { happy_var_5 -> 
	case happyOut12 happy_x_6 of { happy_var_6 -> 
	happyIn44
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = let { conntows =[ ConnDtoW chid hsn prn vars vexp | ConnDtoW chid hsn prn [] (view -> Vconst (Cstring "")) <- (parseVal happySubAttrs_5) , ConnDtoW chid' "" (-1) vars vexp <- (parseVal happySubAttrs_5) , not $ prn ==(-1) , chid ==chid' ] ; connfrows =[ ConnDfroW chid hsn prn var vexps | ConnDfroW chid hsn prn (VarId "" (-1) srt) [] <- (parseVal happySubAttrs_5) , ConnDfroW chid' "" (-1) var vexps <- (parseVal happySubAttrs_5) , not $ prn ==(-1) , chid ==chid' ] } in ( IdCnect (CnectId happy_var_2 (inhNodeUid happySelfAttrs) ), DefCnect (CnectDef (parseVal happySubAttrs_4) (conntows ++ connfrows) ) ) , synSigs = Sigs.empty , synMaxUid = (synMaxUid happySubAttrs_5)  }; (happyConditions_4,happySubAttrs_4) = happy_var_4 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1  }; (happyConditions_5,happySubAttrs_5) = happy_var_5 happyEmptyAttrs{ inhNodeUid = (synMaxUid happySubAttrs_4) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; (happyConditions_6,happySubAttrs_6) = happy_var_6 happyEmptyAttrs; happyConditions = [let { frowchids =[ chid | ConnDfroW chid hs pr (VarId "" (-1) srt) [] <- (parseVal happySubAttrs_5) , not $ pr ==(-1) ] ; decchids =[ chid | ConnDfroW chid "" (-1) var vexps <- (parseVal happySubAttrs_5) ] } in if ( length frowchids ==length decchids ) && ( Set.fromList frowchids ==Set.fromList decchids ) then () else error $ "\nTXS0225: "++ "No bijection between IN channels and decodings\n" , let { towchids =[ chid | ConnDtoW chid hs pr [] (view -> Vconst (Cstring "")) <- (parseVal happySubAttrs_5) , not $ pr ==(-1) ] ; encchids =[ chid | ConnDtoW chid "" (-1) vars vexp <- (parseVal happySubAttrs_5) ] } in if ( length towchids ==length encchids ) && ( Set.fromList towchids ==Set.fromList encchids ) then () else error $ "\nTXS0224: "++ "No bijection between OUT channels and Encodings\n" , let dbls =doubles [ (hs,pr) | ConnDfroW chid hs pr (VarId "" (-1) srt) [] <- (parseVal happySubAttrs_5) , not $ pr ==(-1) ] in if null dbls then () else error $ "\nTXS0223: "++ "Double (hostname,portnr) for IN: "++(show dbls)++"\n" , let dbls =doubles [ (hs,pr) | ConnDtoW chid hs pr [] (view -> Vconst (Cstring "")) <- (parseVal happySubAttrs_5) , not $ pr ==(-1) ] in if null dbls then () else error $ "\nTXS0222: "++ "Double (hostname,portnr) for OUT: "++(show dbls)++"\n" , let dbls =doubles $ map ChanId.name (synChanSigs happySubAttrs_5) in if null dbls then () else error $ "\nTXS0221: "++ "Double channels in Connection definition:"++(show dbls)++"\n" ]++happyConditions_4++happyConditions_5++happyConditions_6 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}}}

happyReduce_63 = happySpecReduce_1  33# happyReduction_63
happyReduction_63 happy_x_1
	 =  happyIn45
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = ClientSocket , synMaxUid = (inhNodeUid happySelfAttrs)  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)

happyReduce_64 = happySpecReduce_1  33# happyReduction_64
happyReduction_64 happy_x_1
	 =  happyIn45
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = ServerSocket , synMaxUid = (inhNodeUid happySelfAttrs)  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)

happyReduce_65 = happySpecReduce_0  34# happyReduction_65
happyReduction_65  =  happyIn46
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [] , synChanSigs = [] , synMaxUid = (inhNodeUid happySelfAttrs)  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)

happyReduce_66 = happySpecReduce_2  34# happyReduction_66
happyReduction_66 happy_x_2
	happy_x_1
	 =  case happyOut46 happy_x_1 of { happy_var_1 -> 
	case happyOut47 happy_x_2 of { happy_var_2 -> 
	happyIn46
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) ++ [ (parseVal happySubAttrs_2) ] , synChanSigs = (synChanSigs happySubAttrs_1) ++ (synChanSigs happySubAttrs_2) , synMaxUid = (synMaxUid happySubAttrs_2)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1++happyConditions_2 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_67 = happySpecReduce_1  35# happyReduction_67
happyReduction_67 happy_x_1
	 =  case happyOut48 happy_x_1 of { happy_var_1 -> 
	happyIn47
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) , synChanSigs = (synChanSigs happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_68 = happySpecReduce_1  35# happyReduction_68
happyReduction_68 happy_x_1
	 =  case happyOut49 happy_x_1 of { happy_var_1 -> 
	happyIn47
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) , synChanSigs = (synChanSigs happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_69 = happySpecReduce_1  35# happyReduction_69
happyReduction_69 happy_x_1
	 =  case happyOut50 happy_x_1 of { happy_var_1 -> 
	happyIn47
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) , synChanSigs = [] , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_70 = happySpecReduce_1  35# happyReduction_70
happyReduction_70 happy_x_1
	 =  case happyOut51 happy_x_1 of { happy_var_1 -> 
	happyIn47
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) , synChanSigs = [] , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_71 = happyReduce 7# 36# happyReduction_71
happyReduction_71 (happy_x_7 `HappyStk`
	happy_x_6 `HappyStk`
	happy_x_5 `HappyStk`
	happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOut75 happy_x_3 of { happy_var_3 -> 
	case happyOutTok happy_x_5 of { (Tstring           posstring   happy_var_5) -> 
	case happyOutTok happy_x_7 of { (Tinteger          posinteger  happy_var_7) -> 
	happyIn48
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = case (parseVal happySubAttrs_3) of { [chid] -> ConnDtoW chid happy_var_5 happy_var_7 [] (cstrConst (Cstring "")) ; _ -> error "\nTXS0228: Only single channel in out-connection\n" } , synChanSigs = (parseVal happySubAttrs_3) , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhChanSigs = Sigs.chan (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_3 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}}

happyReduce_72 = happyReduce 7# 37# happyReduction_72
happyReduction_72 (happy_x_7 `HappyStk`
	happy_x_6 `HappyStk`
	happy_x_5 `HappyStk`
	happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOut75 happy_x_3 of { happy_var_3 -> 
	case happyOutTok happy_x_5 of { (Tstring           posstring   happy_var_5) -> 
	case happyOutTok happy_x_7 of { (Tinteger          posinteger  happy_var_7) -> 
	happyIn49
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = case (parseVal happySubAttrs_3) of { [chid] -> ConnDfroW chid happy_var_5 happy_var_7 (VarId "" (-1) sortId_String) [] ; _ -> error "\nTXS0229: Only single channel in connection\n" } , synChanSigs = (parseVal happySubAttrs_3) , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhChanSigs = Sigs.chan (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_3 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}}

happyReduce_73 = happyReduce 4# 38# happyReduction_73
happyReduction_73 (happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOut81 happy_x_2 of { happy_var_2 -> 
	case happyOut83 happy_x_4 of { happy_var_4 -> 
	happyIn50
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = case ( (parseVal happySubAttrs_2) , (parseVal happySubAttrs_4) ) of { ( Offer chid choffs, [ Exclam vexp ] ) | sortOf vexp ==sortId_String -> ConnDtoW chid "" (-1) [ vid | Quest vid <- choffs ] vexp ; _ -> error $ "\nTXS0231: ENCODE range shall be one '!' of String\n" } , synMaxUid = (synMaxUid happySubAttrs_4)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhChanSigs = Sigs.chan (inhSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = []  }; (happyConditions_4,happySubAttrs_4) = happy_var_4 happyEmptyAttrs{ inhVarSigs = (synVarSigs happySubAttrs_2) , inhChanSigs = Sigs.chan (inhSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_2) + 1 , inhSolvSorts = [Just sortId_String]  }; happyConditions = [let excls =[ e | e@(Exclam vexp) <- chanoffers (parseVal happySubAttrs_2) ] in if null excls then () else error $ "\nTXS0233: ENCODE domain shall not have '!'\n" , let dbls =doubles [ VarId.name v | Quest v <- chanoffers (parseVal happySubAttrs_2) ] in if null dbls then () else error $ "\nTXS0232: ENCODE domain shall have unique variables\n" ]++happyConditions_2++happyConditions_4 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}

happyReduce_74 = happyReduce 4# 39# happyReduction_74
happyReduction_74 (happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOut81 happy_x_2 of { happy_var_2 -> 
	case happyOut83 happy_x_4 of { happy_var_4 -> 
	happyIn51
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = case ( (parseVal happySubAttrs_2) , (parseVal happySubAttrs_4) ) of { ( Offer chid choffs, [ Quest vid ] ) | sortOf vid ==sortId_String -> ConnDfroW chid "" (-1) vid [ vexp | Exclam vexp <- choffs ] ; _ -> error $ "\nTXS0241: DECODE domain shall be one '?' of String\n" } , synMaxUid = (synMaxUid happySubAttrs_4)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhChanSigs = Sigs.chan (inhSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (synVarSigs happySubAttrs_4)  }; (happyConditions_4,happySubAttrs_4) = happy_var_4 happyEmptyAttrs{ inhVarSigs = [] , inhChanSigs = Sigs.chan (inhSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_2) + 1 , inhSolvSorts = [Just sortId_String]  }; happyConditions = [let qstns =[ q | q@(Quest vid) <- chanoffers (parseVal happySubAttrs_2) ] in if null qstns then () else error $ "\nTXS0242: DECODE range shall not have '?'\n" ]++happyConditions_2++happyConditions_4 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}

happyReduce_75 = happySpecReduce_0  40# happyReduction_75
happyReduction_75  =  happyIn52
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [ Set.singleton chid | chid <- (inhChanSigs happySelfAttrs) ] , synMaxUid = (inhNodeUid happySelfAttrs)  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)

happyReduce_76 = happySpecReduce_2  40# happyReduction_76
happyReduction_76 happy_x_2
	happy_x_1
	 =  case happyOut53 happy_x_2 of { happy_var_2 -> 
	happyIn52
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_2) , synMaxUid = (synMaxUid happySubAttrs_2)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhChanSigs = (inhChanSigs happySelfAttrs)  }; happyConditions = []++happyConditions_2 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_77 = happySpecReduce_1  41# happyReduction_77
happyReduction_77 happy_x_1
	 =  case happyOut54 happy_x_1 of { happy_var_1 -> 
	happyIn53
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [ (parseVal happySubAttrs_1) ] , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhChanSigs = (inhChanSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_78 = happySpecReduce_3  41# happyReduction_78
happyReduction_78 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut53 happy_x_1 of { happy_var_1 -> 
	case happyOut54 happy_x_3 of { happy_var_3 -> 
	happyIn53
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) ++ [ (parseVal happySubAttrs_3) ] , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhChanSigs = (inhChanSigs happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhChanSigs = (inhChanSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_79 = happySpecReduce_3  42# happyReduction_79
happyReduction_79 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut102 happy_x_2 of { happy_var_2 -> 
	happyIn54
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = let { chans =[ case bindOnName nm (map IdChan (inhChanSigs happySelfAttrs) ) of { [] -> error $ "\nTXS0531: "++ "Undefined sync channel: "++(show nm)++"\n" ; [IdChan ch] -> ch ; _ -> error $ "\nTXS0532: "++ "More sync channels: "++(show nm)++"\n" } | nm <- (parseVal happySubAttrs_2) ] ; dbls =doubles chans } in if null dbls then Set.fromList chans else error $ "\nTXS0533: "++ "Double used sync channel: "++(show dbls)++"\n" , synMaxUid = (inhNodeUid happySelfAttrs)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs; happyConditions = []++happyConditions_2 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_80 = happySpecReduce_0  43# happyReduction_80
happyReduction_80  =  happyIn55
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = NoExit , synMaxUid = (inhNodeUid happySelfAttrs)  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)

happyReduce_81 = happySpecReduce_2  43# happyReduction_81
happyReduction_81 happy_x_2
	happy_x_1
	 =  case happyOut57 happy_x_2 of { happy_var_2 -> 
	happyIn55
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = Exit (parseVal happySubAttrs_2) , synMaxUid = (synMaxUid happySubAttrs_2)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_2 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_82 = happySpecReduce_1  43# happyReduction_82
happyReduction_82 happy_x_1
	 =  happyIn55
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = Hit , synMaxUid = (inhNodeUid happySelfAttrs)  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)

happyReduce_83 = happySpecReduce_2  44# happyReduction_83
happyReduction_83 happy_x_2
	happy_x_1
	 =  case happyOutTok happy_x_2 of { (Tcapid            poscapid    happy_var_2) -> 
	happyIn56
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = case Map.lookup happy_var_2 (Sigs.sort (inhSigs happySelfAttrs) ) of { Nothing -> error ("\nTXS0131: " ++ "Explicit sort not defined: "++(show happy_var_2 )++"\n") ; Just sid -> sid } , synMaxUid = (inhNodeUid happySelfAttrs)  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)}

happyReduce_84 = happySpecReduce_1  45# happyReduction_84
happyReduction_84 happy_x_1
	 =  case happyOut100 happy_x_1 of { happy_var_1 -> 
	happyIn57
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [ case Map.lookup nm (Sigs.sort (inhSigs happySelfAttrs) ) of { Nothing -> error ("\nTXS0151: " ++ "Explicit sort not defined: "++(show nm)++"\n") ; Just sid -> sid } | nm <- (parseVal happySubAttrs_1) ] , synMaxUid = (inhNodeUid happySelfAttrs)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_85 = happySpecReduce_1  46# happyReduction_85
happyReduction_85 happy_x_1
	 =  case happyOut101 happy_x_1 of { happy_var_1 -> 
	happyIn58
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [ case Map.lookup nm (Sigs.sort (inhSigs happySelfAttrs) ) of { Nothing -> error ("\nTXS0151: " ++ "Explicit sort not defined: "++(show nm)++"\n") ; Just sid -> sid } | nm <- (parseVal happySubAttrs_1) ] , synMaxUid = (inhNodeUid happySelfAttrs)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_86 = happySpecReduce_3  47# happyReduction_86
happyReduction_86 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut60 happy_x_2 of { happy_var_2 -> 
	happyIn59
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_2) , synMaxUid = (synMaxUid happySubAttrs_2)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = [let dbls =doubles (map ChanId.name (parseVal happySubAttrs_2) ) in if null dbls then () else error ("\nTXS0171: " ++ "Double defined formal channels: "++(show dbls)++"\n") ]++happyConditions_2 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_87 = happySpecReduce_0  48# happyReduction_87
happyReduction_87  =  happyIn60
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [] , synMaxUid = (inhNodeUid happySelfAttrs)  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)

happyReduce_88 = happySpecReduce_1  48# happyReduction_88
happyReduction_88 happy_x_1
	 =  case happyOut62 happy_x_1 of { happy_var_1 -> 
	happyIn60
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_89 = happySpecReduce_3  48# happyReduction_89
happyReduction_89 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut60 happy_x_1 of { happy_var_1 -> 
	case happyOut62 happy_x_3 of { happy_var_3 -> 
	happyIn60
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) ++ (parseVal happySubAttrs_3) , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_90 = happyReduce 4# 49# happyReduction_90
happyReduction_90 (happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOutTok happy_x_2 of { (Csigs             happy_var_2) -> 
	case happyOutTok happy_x_3 of { (Cunid             happy_var_3) -> 
	case happyOut62 happy_x_4 of { happy_var_4 -> 
	happyIn61
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = ( (synMaxUid happySubAttrs_4) , (parseVal happySubAttrs_4) )  }; (happyConditions_4,happySubAttrs_4) = happy_var_4 happyEmptyAttrs{ inhNodeUid = happy_var_3 , inhSigs = Sigs.uniqueCombine (synSigs happySubAttrs_4) happy_var_2  }; happyConditions = []++happyConditions_4 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}}

happyReduce_91 = happySpecReduce_1  50# happyReduction_91
happyReduction_91 happy_x_1
	 =  case happyOut97 happy_x_1 of { happy_var_1 -> 
	happyIn62
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [ ChanId nm uid [] | (nm,uid) <- zip (parseVal happySubAttrs_1) [ (inhNodeUid happySelfAttrs) ..] ] , synMaxUid = (inhNodeUid happySelfAttrs) + (length (parseVal happySubAttrs_1) )  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_92 = happySpecReduce_3  50# happyReduction_92
happyReduction_92 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut97 happy_x_1 of { happy_var_1 -> 
	case happyOut58 happy_x_3 of { happy_var_3 -> 
	happyIn62
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [ ChanId nm uid (parseVal happySubAttrs_3) | (nm,uid) <- zip (parseVal happySubAttrs_1) [ (inhNodeUid happySelfAttrs) ..] ] , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + (length (parseVal happySubAttrs_1) ) , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_93 = happySpecReduce_2  51# happyReduction_93
happyReduction_93 happy_x_2
	happy_x_1
	 =  happyIn63
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [] , synMaxUid = (inhNodeUid happySelfAttrs)  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)

happyReduce_94 = happySpecReduce_3  51# happyReduction_94
happyReduction_94 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut65 happy_x_2 of { happy_var_2 -> 
	happyIn63
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_2) , synMaxUid = (synMaxUid happySubAttrs_2)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = [let dbls =doubles ( map ( sig . IdVar ) (parseVal happySubAttrs_2) ) in if null dbls then () else error ("\nTXS0211: " ++ "Double defined formal variables: "++(show dbls)++"\n") ]++happyConditions_2 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_95 = happyReduce 4# 52# happyReduction_95
happyReduction_95 (happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOutTok happy_x_2 of { (Csigs             happy_var_2) -> 
	case happyOutTok happy_x_3 of { (Cunid             happy_var_3) -> 
	case happyOut65 happy_x_4 of { happy_var_4 -> 
	happyIn64
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = ( (synMaxUid happySubAttrs_4) , (parseVal happySubAttrs_4) )  }; (happyConditions_4,happySubAttrs_4) = happy_var_4 happyEmptyAttrs{ inhNodeUid = happy_var_3 , inhSigs = Sigs.uniqueCombine (synSigs happySubAttrs_4) happy_var_2  }; happyConditions = []++happyConditions_4 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}}

happyReduce_96 = happySpecReduce_1  53# happyReduction_96
happyReduction_96 happy_x_1
	 =  case happyOut66 happy_x_1 of { happy_var_1 -> 
	happyIn65
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_97 = happySpecReduce_3  53# happyReduction_97
happyReduction_97 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut65 happy_x_1 of { happy_var_1 -> 
	case happyOut66 happy_x_3 of { happy_var_3 -> 
	happyIn65
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) ++ (parseVal happySubAttrs_3) , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_98 = happySpecReduce_2  54# happyReduction_98
happyReduction_98 happy_x_2
	happy_x_1
	 =  case happyOut103 happy_x_1 of { happy_var_1 -> 
	case happyOut56 happy_x_2 of { happy_var_2 -> 
	happyIn66
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [ VarId nm uid (parseVal happySubAttrs_2) | (nm,uid) <- zip (parseVal happySubAttrs_1) [ (inhNodeUid happySelfAttrs) ..] ] , synMaxUid = (synMaxUid happySubAttrs_2)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + (length (parseVal happySubAttrs_1) ) , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1++happyConditions_2 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_99 = happySpecReduce_2  55# happyReduction_99
happyReduction_99 happy_x_2
	happy_x_1
	 =  case happyOutTok happy_x_1 of { (Tsmallid          possmallid  happy_var_1) -> 
	case happyOut56 happy_x_2 of { happy_var_2 -> 
	happyIn67
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = VarId happy_var_1 (inhNodeUid happySelfAttrs) (parseVal happySubAttrs_2) , synMaxUid = (synMaxUid happySubAttrs_2)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_2 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_100 = happyReduce 6# 56# happyReduction_100
happyReduction_100 (happy_x_6 `HappyStk`
	happy_x_5 `HappyStk`
	happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOutTok happy_x_2 of { (Csigs             happy_var_2) -> 
	case happyOutTok happy_x_3 of { (Cchanenv          happy_var_3) -> 
	case happyOutTok happy_x_4 of { (Cvarenv           happy_var_4) -> 
	case happyOutTok happy_x_5 of { (Cunid             happy_var_5) -> 
	case happyOut69 happy_x_6 of { happy_var_6 -> 
	happyIn68
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = ( (synMaxUid happySubAttrs_6) , (parseVal happySubAttrs_6) )  }; (happyConditions_6,happySubAttrs_6) = happy_var_6 happyEmptyAttrs{ inhChanSigs = happy_var_3 , inhSigs = happy_var_2 , inhNodeUid = happy_var_5 , inhVarSigs = happy_var_4  }; happyConditions = []++happyConditions_6 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}}}}

happyReduce_101 = happySpecReduce_1  57# happyReduction_101
happyReduction_101 happy_x_1
	 =  case happyOut70 happy_x_1 of { happy_var_1 -> 
	happyIn69
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) , synExitSorts = (synExitSorts happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_102 = happySpecReduce_3  58# happyReduction_102
happyReduction_102 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut70 happy_x_1 of { happy_var_1 -> 
	case happyOut71 happy_x_3 of { happy_var_3 -> 
	happyIn70
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = Enable (parseVal happySubAttrs_1) [] (parseVal happySubAttrs_3) , synExitSorts = if (synExitSorts happySubAttrs_1) ==Exit [] then (synExitSorts happySubAttrs_3) else error ("\nTXS2231: " ++ "Exit does not match in Enable\n") , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_103 = happyReduce 7# 58# happyReduction_103
happyReduction_103 (happy_x_7 `HappyStk`
	happy_x_6 `HappyStk`
	happy_x_5 `HappyStk`
	happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOut70 happy_x_1 of { happy_var_1 -> 
	case happyOut82 happy_x_4 of { happy_var_4 -> 
	case happyOut71 happy_x_6 of { happy_var_6 -> 
	case happyOut13 happy_x_7 of { happy_var_7 -> 
	happyIn70
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = Enable (parseVal happySubAttrs_1) (parseVal happySubAttrs_4) (parseVal happySubAttrs_6) , synExitSorts = (synExitSorts happySubAttrs_6) , synMaxUid = (synMaxUid happySubAttrs_6)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; (happyConditions_4,happySubAttrs_4) = happy_var_4 happyEmptyAttrs{ inhSolvSorts = case (synExitSorts happySubAttrs_1) of { Exit sids -> [ Just sid | sid <- sids ] ; _ -> error $ "\nTXS2232: " ++ "No-exit process in Enable\n" } , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; (happyConditions_6,happySubAttrs_6) = happy_var_6 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_4) + 1 , inhVarSigs = map (\(IdVar v) -> v ) $ scopeMerge (map IdVar (inhVarSigs happySelfAttrs) ) (map IdVar (synVarSigs happySubAttrs_4) )  }; (happyConditions_7,happySubAttrs_7) = happy_var_7 happyEmptyAttrs; happyConditions = []++happyConditions_1++happyConditions_4++happyConditions_6++happyConditions_7 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}}}

happyReduce_104 = happySpecReduce_3  58# happyReduction_104
happyReduction_104 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut70 happy_x_1 of { happy_var_1 -> 
	case happyOut71 happy_x_3 of { happy_var_3 -> 
	happyIn70
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = Disable (parseVal happySubAttrs_1) (parseVal happySubAttrs_3) , synExitSorts = (synExitSorts happySubAttrs_1) <<+>> (synExitSorts happySubAttrs_3) , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_105 = happySpecReduce_3  58# happyReduction_105
happyReduction_105 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut70 happy_x_1 of { happy_var_1 -> 
	case happyOut71 happy_x_3 of { happy_var_3 -> 
	happyIn70
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = Interrupt (parseVal happySubAttrs_1) (parseVal happySubAttrs_3) , synExitSorts = if (synExitSorts happySubAttrs_3) ==Exit [] then (synExitSorts happySubAttrs_1) else error ("\nTXS2233: " ++ "Exit sorts do not match in Interrupt\n") , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_106 = happySpecReduce_1  58# happyReduction_106
happyReduction_106 happy_x_1
	 =  case happyOut71 happy_x_1 of { happy_var_1 -> 
	happyIn70
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) , synExitSorts = (synExitSorts happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_107 = happySpecReduce_3  59# happyReduction_107
happyReduction_107 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut71 happy_x_1 of { happy_var_1 -> 
	case happyOut72 happy_x_3 of { happy_var_3 -> 
	happyIn71
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = case (parseVal happySubAttrs_1) of { Parallel chids bexps -> if (Set.fromList chids) ==(Set.fromList (inhChanSigs happySelfAttrs) ) then Parallel (inhChanSigs happySelfAttrs) (bexps ++ [ (parseVal happySubAttrs_3) ]) else Parallel (inhChanSigs happySelfAttrs) [ (parseVal happySubAttrs_1) , (parseVal happySubAttrs_3) ] ; _ -> Parallel (inhChanSigs happySelfAttrs) [ (parseVal happySubAttrs_1) , (parseVal happySubAttrs_3) ] } , synExitSorts = (synExitSorts happySubAttrs_1) <<->> (synExitSorts happySubAttrs_3) , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 2 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_108 = happySpecReduce_3  59# happyReduction_108
happyReduction_108 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut71 happy_x_1 of { happy_var_1 -> 
	case happyOut72 happy_x_3 of { happy_var_3 -> 
	happyIn71
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = case (parseVal happySubAttrs_1) of { Parallel [] bexps -> Parallel [] (bexps ++ [ (parseVal happySubAttrs_3) ]) ; _ -> Parallel [] [ (parseVal happySubAttrs_1) , (parseVal happySubAttrs_3) ] } , synExitSorts = (synExitSorts happySubAttrs_1) <<->> (synExitSorts happySubAttrs_3) , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_109 = happyReduce 5# 59# happyReduction_109
happyReduction_109 (happy_x_5 `HappyStk`
	happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOut71 happy_x_1 of { happy_var_1 -> 
	case happyOut96 happy_x_3 of { happy_var_3 -> 
	case happyOut72 happy_x_5 of { happy_var_5 -> 
	happyIn71
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = let chans =[ case bindOnName nm (map IdChan (inhChanSigs happySelfAttrs) ) of { [] -> error ("\nTXS0301: "++ "Channel not defined: "++(show nm)++"\n") ; [IdChan chid] -> chid ; _ -> error ("\nTXS0302: "++ "Channel double defined: "++(show nm)++"\n") } | nm <- (parseVal happySubAttrs_3) ] in case (parseVal happySubAttrs_1) of { Parallel chids bexps -> if (Set.fromList chids) ==(Set.fromList chans) then Parallel chans (bexps ++ [ (parseVal happySubAttrs_5) ]) else Parallel chans [ (parseVal happySubAttrs_1) , (parseVal happySubAttrs_5) ] ; _ -> Parallel chans [ (parseVal happySubAttrs_1) , (parseVal happySubAttrs_5) ] } , synExitSorts = (synExitSorts happySubAttrs_1) <<->> (synExitSorts happySubAttrs_5) , synMaxUid = (synMaxUid happySubAttrs_5)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs; (happyConditions_5,happySubAttrs_5) = happy_var_5 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1++happyConditions_3++happyConditions_5 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}}

happyReduce_110 = happySpecReduce_1  59# happyReduction_110
happyReduction_110 happy_x_1
	 =  case happyOut72 happy_x_1 of { happy_var_1 -> 
	happyIn71
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) , synExitSorts = (synExitSorts happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_111 = happySpecReduce_3  60# happyReduction_111
happyReduction_111 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut72 happy_x_1 of { happy_var_1 -> 
	case happyOut73 happy_x_3 of { happy_var_3 -> 
	happyIn72
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = Choice [ (parseVal happySubAttrs_1) , (parseVal happySubAttrs_3) ] , synExitSorts = (synExitSorts happySubAttrs_1) <<+>> (synExitSorts happySubAttrs_3) , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_112 = happySpecReduce_1  60# happyReduction_112
happyReduction_112 happy_x_1
	 =  case happyOut73 happy_x_1 of { happy_var_1 -> 
	happyIn72
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) , synExitSorts = (synExitSorts happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_113 = happyReduce 5# 61# happyReduction_113
happyReduction_113 (happy_x_5 `HappyStk`
	happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOut89 happy_x_2 of { happy_var_2 -> 
	case happyOut73 happy_x_5 of { happy_var_5 -> 
	happyIn73
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = Guard (cstrAnd (Set.fromList (parseVal happySubAttrs_2) )) (parseVal happySubAttrs_5) , synExitSorts = (synExitSorts happySubAttrs_5) , synMaxUid = (synMaxUid happySubAttrs_5)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhSolvSorts = [ if sortId_Bool `elem` sids then Just sortId_Bool else error ("\nTXS0312: " ++ "Sort of guard must be 'Bool'\n") | sids <- (synExpdSorts happySubAttrs_2) ] , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; (happyConditions_5,happySubAttrs_5) = happy_var_5 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_2) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_2++happyConditions_5 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}

happyReduce_114 = happySpecReduce_3  61# happyReduction_114
happyReduction_114 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut78 happy_x_1 of { happy_var_1 -> 
	case happyOut73 happy_x_3 of { happy_var_3 -> 
	happyIn73
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = ActionPref (ActOffer (parseVal happySubAttrs_1) (cstrConst (Cbool True))) (parseVal happySubAttrs_3) , synExitSorts = (synExitSorts happySubAttrs_1) <<+>> (synExitSorts happySubAttrs_3) , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhVarSigs = map (\(IdVar v) -> v ) $ scopeMerge (map IdVar (inhVarSigs happySelfAttrs) ) (map IdVar (synVarSigs happySubAttrs_1) )  }; happyConditions = []++happyConditions_1++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_115 = happyReduce 6# 61# happyReduction_115
happyReduction_115 (happy_x_6 `HappyStk`
	happy_x_5 `HappyStk`
	happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOut78 happy_x_1 of { happy_var_1 -> 
	case happyOut89 happy_x_3 of { happy_var_3 -> 
	case happyOut73 happy_x_6 of { happy_var_6 -> 
	happyIn73
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = ActionPref (ActOffer (parseVal happySubAttrs_1) (cstrAnd (Set.fromList (parseVal happySubAttrs_3) ))) (parseVal happySubAttrs_6) , synExitSorts = (synExitSorts happySubAttrs_1) <<+>> (synExitSorts happySubAttrs_6) , synMaxUid = (synMaxUid happySubAttrs_6)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhSolvSorts = [ if sortId_Bool `elem` sids then Just sortId_Bool else error ("\nTXS0313: " ++ "Sort of constraint must be 'Bool'\n") | sids <- (synExpdSorts happySubAttrs_3) ] , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhVarSigs = map (\(IdVar v) -> v ) $ scopeMerge (map IdVar (inhVarSigs happySelfAttrs) ) (map IdVar (synVarSigs happySubAttrs_1) )  }; (happyConditions_6,happySubAttrs_6) = happy_var_6 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_3) + 1 , inhVarSigs = map (\(IdVar v) -> v ) $ scopeMerge (map IdVar (inhVarSigs happySelfAttrs) ) (map IdVar (synVarSigs happySubAttrs_1) )  }; happyConditions = []++happyConditions_1++happyConditions_3++happyConditions_6 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}}

happyReduce_116 = happySpecReduce_1  61# happyReduction_116
happyReduction_116 happy_x_1
	 =  case happyOut78 happy_x_1 of { happy_var_1 -> 
	happyIn73
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = ActionPref (ActOffer (parseVal happySubAttrs_1) (cstrConst (Cbool True))) Stop , synExitSorts = (synExitSorts happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_117 = happyReduce 4# 61# happyReduction_117
happyReduction_117 (happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOut78 happy_x_1 of { happy_var_1 -> 
	case happyOut89 happy_x_3 of { happy_var_3 -> 
	happyIn73
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = ActionPref (ActOffer (parseVal happySubAttrs_1) (cstrAnd (Set.fromList (parseVal happySubAttrs_3) ))) Stop , synExitSorts = (synExitSorts happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhSolvSorts = [ if sortId_Bool `elem` sids then Just sortId_Bool else error ("\nTXS0313: " ++ "Sort of constraint must be 'Bool'\n") | sids <- (synExpdSorts happySubAttrs_3) ] , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhVarSigs = map (\(IdVar v) -> v ) $ scopeMerge (map IdVar (inhVarSigs happySelfAttrs) ) (map IdVar (synVarSigs happySubAttrs_1) )  }; happyConditions = []++happyConditions_1++happyConditions_3 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}

happyReduce_118 = happySpecReduce_1  61# happyReduction_118
happyReduction_118 happy_x_1
	 =  happyIn73
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = Stop , synExitSorts = NoExit , synMaxUid = (inhNodeUid happySelfAttrs)  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)

happyReduce_119 = happySpecReduce_3  61# happyReduction_119
happyReduction_119 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut95 happy_x_1 of { happy_var_1 -> 
	case happyOut74 happy_x_2 of { happy_var_2 -> 
	case happyOut76 happy_x_3 of { happy_var_3 -> 
	happyIn73
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = let ppids =[ pid | pid@(ProcId nm uid chids vids exs) <- Sigs.pro (inhSigs happySelfAttrs) , nm ==(parseVal happySubAttrs_1) , map chansorts chids ==map chansorts (parseVal happySubAttrs_2) , length vids ==length (synExpdSorts happySubAttrs_3) , map varsort vids ==map sortOf (parseVal happySubAttrs_3) ] in case ppids of { [] -> error $ "\nTXS0323: "++ "Process not resolved: "++ show (parseVal happySubAttrs_1) ++"\n" ++ "Processes with the same name are\n* " ++ Utils.join "\n* " (map show [pid | pid@(ProcId nm _ _ _ _) <- Sigs.pro (inhSigs happySelfAttrs) , nm ==(parseVal happySubAttrs_1) ]) ; [pid] -> ProcInst pid (parseVal happySubAttrs_2) (parseVal happySubAttrs_3) ; _ -> error $ "\nTXS0324: "++ "Process "++ "not uniquely resolved: "++ show (parseVal happySubAttrs_1) ++"\n" ++ "Possible processes are\n* " ++ Utils.join "\n* " (map show ppids) } , synExitSorts = let extsorts =[ exs | ProcId nm uid chids vids exs <- Sigs.pro (inhSigs happySelfAttrs) , nm ==(parseVal happySubAttrs_1) , map chansorts chids ==map chansorts (synChanSigs happySubAttrs_2) , length vids ==length (synExpdSorts happySubAttrs_3) , and [ (varsort v) `elem` r | (v,r) <- (zip vids (synExpdSorts happySubAttrs_3) ) ] ] in if (length extsorts) ==1 then head extsorts else error $ "\nTXS0322: " ++ "Process not uniquely resolved: "++(show (parseVal happySubAttrs_1) )++"\n" , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhChanSigs = (inhChanSigs happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhSolvSorts = let actsorts =[ map varsort vids | ProcId nm uid chids vids exs <- Sigs.pro (inhSigs happySelfAttrs) , nm ==(parseVal happySubAttrs_1) , map chansorts chids ==map chansorts (synChanSigs happySubAttrs_2) , length vids ==length (synExpdSorts happySubAttrs_3) , and [ (varsort v) `elem` r | (v,r) <- zip vids (synExpdSorts happySubAttrs_3) ] ] in if (length actsorts) ==1 then [ Just argsort | argsort <- head actsorts ] else error $ "\nTXS0321: " ++ "Process not uniquely resolved: "++(show (parseVal happySubAttrs_1) )++"\n" , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_2) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1++happyConditions_2++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}}

happyReduce_120 = happyReduce 5# 61# happyReduction_120
happyReduction_120 (happy_x_5 `HappyStk`
	happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOut90 happy_x_2 of { happy_var_2 -> 
	case happyOut70 happy_x_4 of { happy_var_4 -> 
	case happyOut13 happy_x_5 of { happy_var_5 -> 
	happyIn73
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = foldr ValueEnv (parseVal happySubAttrs_4) (parseVal happySubAttrs_2) , synExitSorts = (synExitSorts happySubAttrs_4) , synMaxUid = (synMaxUid happySubAttrs_4)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; (happyConditions_4,happySubAttrs_4) = happy_var_4 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_2) + 1 , inhVarSigs = map (\(IdVar v) -> v ) $ scopeMerge (map IdVar (inhVarSigs happySelfAttrs) ) (map IdVar (synVarSigs happySubAttrs_2) )  }; (happyConditions_5,happySubAttrs_5) = happy_var_5 happyEmptyAttrs; happyConditions = []++happyConditions_2++happyConditions_4++happyConditions_5 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}}

happyReduce_121 = happyReduce 5# 61# happyReduction_121
happyReduction_121 (happy_x_5 `HappyStk`
	happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOut59 happy_x_2 of { happy_var_2 -> 
	case happyOut70 happy_x_4 of { happy_var_4 -> 
	case happyOut13 happy_x_5 of { happy_var_5 -> 
	happyIn73
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = Hide (parseVal happySubAttrs_2) (parseVal happySubAttrs_4) , synExitSorts = (synExitSorts happySubAttrs_4) , synMaxUid = (synMaxUid happySubAttrs_4)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; (happyConditions_4,happySubAttrs_4) = happy_var_4 happyEmptyAttrs{ inhChanSigs = map (\(IdChan c) -> c ) $ scopeMerge (map IdChan (inhChanSigs happySelfAttrs) ) (map IdChan (parseVal happySubAttrs_2) ) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_2) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; (happyConditions_5,happySubAttrs_5) = happy_var_5 happyEmptyAttrs; happyConditions = []++happyConditions_2++happyConditions_4++happyConditions_5 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}}

happyReduce_122 = happySpecReduce_3  61# happyReduction_122
happyReduction_122 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut70 happy_x_2 of { happy_var_2 -> 
	happyIn73
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_2) , synExitSorts = (synExitSorts happySubAttrs_2) , synMaxUid = (synMaxUid happySubAttrs_2)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_2 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_123 = happySpecReduce_3  62# happyReduction_123
happyReduction_123 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut75 happy_x_2 of { happy_var_2 -> 
	happyIn74
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_2) , synChanSigs = (synChanSigs happySubAttrs_2) , synMaxUid = (synMaxUid happySubAttrs_2)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhChanSigs = (inhChanSigs happySelfAttrs)  }; happyConditions = []++happyConditions_2 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_124 = happySpecReduce_1  63# happyReduction_124
happyReduction_124 happy_x_1
	 =  case happyOut96 happy_x_1 of { happy_var_1 -> 
	happyIn75
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (synChanSigs happySelfAttrs) , synChanSigs = [ case bindOnName nm (map IdChan (inhChanSigs happySelfAttrs) ) of { [] -> error $ "\nTXS0331: "++ "Undefined used channel: "++(show nm)++"\n" ; [IdChan chid] -> chid ; _ -> error $ "\nTXS0332: "++ "Double defined used channel: "++(show nm)++"\n" } | nm <- (parseVal happySubAttrs_1) ] , synMaxUid = (inhNodeUid happySelfAttrs)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs; happyConditions = [let dbls =doubles (parseVal happySubAttrs_1) in if null dbls then () else error $ "\nTXS0330: " ++ "Double used channels: "++(show dbls)++"\n" ]++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_125 = happySpecReduce_3  64# happyReduction_125
happyReduction_125 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut88 happy_x_2 of { happy_var_2 -> 
	happyIn76
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_2) , synExpdSorts = (synExpdSorts happySubAttrs_2) , synMaxUid = (synMaxUid happySubAttrs_2)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhSolvSorts = (inhSolvSorts happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_2 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_126 = happyReduce 6# 65# happyReduction_126
happyReduction_126 (happy_x_6 `HappyStk`
	happy_x_5 `HappyStk`
	happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOutTok happy_x_2 of { (Csigs             happy_var_2) -> 
	case happyOutTok happy_x_3 of { (Cchanenv          happy_var_3) -> 
	case happyOutTok happy_x_4 of { (Cvarenv           happy_var_4) -> 
	case happyOutTok happy_x_5 of { (Cunid             happy_var_5) -> 
	case happyOut78 happy_x_6 of { happy_var_6 -> 
	happyIn77
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = ( (synMaxUid happySubAttrs_6) , (parseVal happySubAttrs_6) )  }; (happyConditions_6,happySubAttrs_6) = happy_var_6 happyEmptyAttrs{ inhChanSigs = happy_var_3 , inhSigs = happy_var_2 , inhNodeUid = happy_var_5 , inhVarSigs = happy_var_4  }; happyConditions = []++happyConditions_6 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}}}}

happyReduce_127 = happySpecReduce_1  66# happyReduction_127
happyReduction_127 happy_x_1
	 =  happyIn78
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = Set.empty , synExitSorts = NoExit , synVarSigs = [] , synMaxUid = (inhNodeUid happySelfAttrs)  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)

happyReduce_128 = happySpecReduce_1  66# happyReduction_128
happyReduction_128 happy_x_1
	 =  happyIn78
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = Set.singleton $ Offer { chanid =chanId_Qstep , chanoffers =[] } , synExitSorts = Hit , synVarSigs = [] , synMaxUid = (inhNodeUid happySelfAttrs)  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)

happyReduce_129 = happySpecReduce_1  66# happyReduction_129
happyReduction_129 happy_x_1
	 =  happyIn78
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = Set.singleton $ Offer { chanid =chanId_Hit , chanoffers =[] } , synExitSorts = Hit , synVarSigs = [] , synMaxUid = (inhNodeUid happySelfAttrs)  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)

happyReduce_130 = happySpecReduce_1  66# happyReduction_130
happyReduction_130 happy_x_1
	 =  happyIn78
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = Set.singleton $ Offer { chanid =chanId_Miss , chanoffers =[] } , synExitSorts = Hit , synVarSigs = [] , synMaxUid = (inhNodeUid happySelfAttrs)  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)

happyReduce_131 = happySpecReduce_1  66# happyReduction_131
happyReduction_131 happy_x_1
	 =  case happyOut80 happy_x_1 of { happy_var_1 -> 
	happyIn78
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = ( Set.fromList (parseVal happySubAttrs_1) )::(Set.Set Offer) , synExitSorts = (synExitSorts happySubAttrs_1) , synVarSigs = (synVarSigs happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; happyConditions = [let dbls =doubles ( map ( sig . IdVar ) (synVarSigs happySubAttrs_1) ) in if null dbls then () else error ("\nTXS0352: "++ "Double defined variables in action : "++(show dbls)++"\n") , let dbls =doubles ( map ChanId.name (synChanSigs happySubAttrs_1) ) in if null dbls then () else error ("\nTXS0351: " ++ "Double used channels in action: "++(show dbls)++"\n") ]++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_132 = happySpecReduce_3  66# happyReduction_132
happyReduction_132 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut79 happy_x_2 of { happy_var_2 -> 
	happyIn78
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = ( Set.fromList (parseVal happySubAttrs_2) )::(Set.Set Offer) , synExitSorts = (synExitSorts happySubAttrs_2) , synVarSigs = (synVarSigs happySubAttrs_2) , synMaxUid = (synMaxUid happySubAttrs_2)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; happyConditions = [let dbls =doubles ( map ( sig . IdVar ) (synVarSigs happySubAttrs_2) ) in if null dbls then () else error ("\nTXS0356: "++ "Double defined variables in action: "++(show dbls)++"\n") , let dbls =doubles ( map ChanId.name (synChanSigs happySubAttrs_2) ) in if null dbls then () else error ("\nTXS0355: " ++ "Double used channels in action: "++(show dbls)++"\n") ]++happyConditions_2 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_133 = happySpecReduce_0  67# happyReduction_133
happyReduction_133  =  happyIn79
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [] , synExitSorts = NoExit , synVarSigs = [] , synChanSigs = [] , synMaxUid = (inhNodeUid happySelfAttrs)  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)

happyReduce_134 = happySpecReduce_1  67# happyReduction_134
happyReduction_134 happy_x_1
	 =  case happyOut80 happy_x_1 of { happy_var_1 -> 
	happyIn79
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) , synExitSorts = (synExitSorts happySubAttrs_1) , synVarSigs = (synVarSigs happySubAttrs_1) , synChanSigs = (synChanSigs happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_135 = happySpecReduce_1  68# happyReduction_135
happyReduction_135 happy_x_1
	 =  case happyOut81 happy_x_1 of { happy_var_1 -> 
	happyIn80
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [ (parseVal happySubAttrs_1) ] , synExitSorts = (synExitSorts happySubAttrs_1) , synVarSigs = (synVarSigs happySubAttrs_1) , synChanSigs = (synChanSigs happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_136 = happySpecReduce_3  68# happyReduction_136
happyReduction_136 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut80 happy_x_1 of { happy_var_1 -> 
	case happyOut81 happy_x_3 of { happy_var_3 -> 
	happyIn80
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) ++ [ (parseVal happySubAttrs_3) ] , synExitSorts = (synExitSorts happySubAttrs_1) <<+>> (synExitSorts happySubAttrs_3) , synVarSigs = (synVarSigs happySubAttrs_1) ++ (synVarSigs happySubAttrs_3) , synChanSigs = (synChanSigs happySubAttrs_1) ++ (synChanSigs happySubAttrs_3) , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_137 = happySpecReduce_2  69# happyReduction_137
happyReduction_137 happy_x_2
	happy_x_1
	 =  case happyOut82 happy_x_2 of { happy_var_2 -> 
	happyIn81
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = Offer chanId_Exit (parseVal happySubAttrs_2) , synExitSorts = Exit (map sortOf (parseVal happySubAttrs_2) ) , synVarSigs = (synVarSigs happySubAttrs_2) , synChanSigs = [ chanId_Exit ] , synMaxUid = (synMaxUid happySubAttrs_2)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhSolvSorts = [ Nothing | s <- (synExpdSorts happySubAttrs_2) ] , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_2 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_138 = happySpecReduce_2  69# happyReduction_138
happyReduction_138 happy_x_2
	happy_x_1
	 =  case happyOut95 happy_x_1 of { happy_var_1 -> 
	case happyOut82 happy_x_2 of { happy_var_2 -> 
	happyIn81
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = Offer (head (synChanSigs happySelfAttrs) ) (parseVal happySubAttrs_2) , synExitSorts = NoExit , synVarSigs = (synVarSigs happySubAttrs_2) , synChanSigs = case bindOnName (parseVal happySubAttrs_1) (map IdChan (inhChanSigs happySelfAttrs) ) of { [] -> error ("\nTXS0375: "++ "Used gate not defined: "++ (show (parseVal happySubAttrs_1) )++"\n") ; [IdChan chid] -> [chid] ; _ -> error ("\nTXS0376: "++ "Used gate double defined: "++ (show (parseVal happySubAttrs_1) )++"\n") } , synMaxUid = (synMaxUid happySubAttrs_2)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhSolvSorts = case bindOnName (parseVal happySubAttrs_1) (map IdChan (inhChanSigs happySelfAttrs) ) of { [] -> error ("\nTXS0371: "++ "Used gate not defined: "++ (show (parseVal happySubAttrs_1) )++"\n") ; [IdChan chid] -> let cs =chansorts chid in if (length cs) ==(length (synExpdSorts happySubAttrs_2) ) then [ Just sid | sid <- cs ] else error ("\nTXS0372: "++ "Number of gate sorts does "++ "not match: "++(show (parseVal happySubAttrs_1) )++"\n") ; _ -> error ("\nTXS0373: "++ "Used gate double defined: "++ (show (parseVal happySubAttrs_1) )++"\n") } , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1++happyConditions_2 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_139 = happySpecReduce_0  70# happyReduction_139
happyReduction_139  =  happyIn82
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [] , synVarSigs = [] , synExpdSorts = [] , synMaxUid = (inhNodeUid happySelfAttrs)  }; happyConditions = [if (inhSolvSorts happySelfAttrs) ==[] then () else if head (inhSolvSorts happySelfAttrs) ==Nothing then () else error ("\nTXS0381: " ++ "Channel offers do not match channel definition\n") ] } in (happyConditions,happySelfAttrs)
	)

happyReduce_140 = happySpecReduce_2  70# happyReduction_140
happyReduction_140 happy_x_2
	happy_x_1
	 =  case happyOut83 happy_x_1 of { happy_var_1 -> 
	case happyOut82 happy_x_2 of { happy_var_2 -> 
	happyIn82
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) ++ (parseVal happySubAttrs_2) , synVarSigs = (synVarSigs happySubAttrs_1) ++ (synVarSigs happySubAttrs_2) , synExpdSorts = (synExpdSorts happySubAttrs_1) ++ (synExpdSorts happySubAttrs_2) , synMaxUid = (synMaxUid happySubAttrs_2)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhSolvSorts = if (length (synExpdSorts happySubAttrs_1) ) > (length (inhSolvSorts happySelfAttrs) ) then error ("\nTXS0382: :" ++ "Number of offers exceeds channel definition\n") else take (length (synExpdSorts happySubAttrs_1) ) (inhSolvSorts happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhSolvSorts = drop (length (synExpdSorts happySubAttrs_1) ) (inhSolvSorts happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1++happyConditions_2 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_141 = happySpecReduce_2  71# happyReduction_141
happyReduction_141 happy_x_2
	happy_x_1
	 =  case happyOut67 happy_x_2 of { happy_var_2 -> 
	happyIn83
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [ Quest (parseVal happySubAttrs_2) ] , synVarSigs = [ (parseVal happySubAttrs_2) ] , synExpdSorts = [ [] ] , synMaxUid = (synMaxUid happySubAttrs_2)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = [let { actsl =[ Just sid | VarId nm uid sid <- [ (parseVal happySubAttrs_2) ] ] ; misma =[ (esid,asid) | (esid,asid) <- zip (inhSolvSorts happySelfAttrs) actsl , not ( esid ==asid || esid ==Nothing ) ] } in if null misma then () else error ("\nTXS0391: Sort mismatch in channel offer " ++ "(expected,actual):\n"++(show misma)++"\n") ]++happyConditions_2 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_142 = happySpecReduce_2  71# happyReduction_142
happyReduction_142 happy_x_2
	happy_x_1
	 =  case happyOutTok happy_x_2 of { (Tsmallid          possmallid  happy_var_2) -> 
	happyIn83
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = map Quest (synVarSigs happySelfAttrs) , synVarSigs = [ VarId nm uid ( case msid of { Nothing -> error ("\nTXS0392: "++ "No sort for offer variable: "++ (show nm)++"\n") ; Just sid -> sid } ) | (nm,msid,uid) <- zip3 [ happy_var_2 ] (inhSolvSorts happySelfAttrs) [ (inhNodeUid happySelfAttrs) ] , if 1 ==(length (inhSolvSorts happySelfAttrs) ) then True else error ("\nTXS ERROR 0183: " ++ show( happy_var_2 ) ++"\n") ] , synExpdSorts = [ [] ] , synMaxUid = (inhNodeUid happySelfAttrs) + 1  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)}

happyReduce_143 = happySpecReduce_2  71# happyReduction_143
happyReduction_143 happy_x_2
	happy_x_1
	 =  case happyOut85 happy_x_2 of { happy_var_2 -> 
	happyIn83
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [ Exclam (parseVal happySubAttrs_2) ] , synVarSigs = [] , synExpdSorts = [ [] ] , synMaxUid = (synMaxUid happySubAttrs_2)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhSolvSort = case (inhSolvSorts happySelfAttrs) of { [] -> error "\nTXS ERROR 0184\n" ; [Nothing] -> Nothing ; [Just sid] -> Just sid ; _ -> error "\nTXS ERROR 0185\n" } , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_2 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_144 = happyReduce 5# 72# happyReduction_144
happyReduction_144 (happy_x_5 `HappyStk`
	happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOutTok happy_x_2 of { (Csigs             happy_var_2) -> 
	case happyOutTok happy_x_3 of { (Cvarenv           happy_var_3) -> 
	case happyOutTok happy_x_4 of { (Cunid             happy_var_4) -> 
	case happyOut85 happy_x_5 of { happy_var_5 -> 
	happyIn84
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = ( (synMaxUid happySubAttrs_5) , (parseVal happySubAttrs_5) )  }; (happyConditions_5,happySubAttrs_5) = happy_var_5 happyEmptyAttrs{ inhVarSigs = happy_var_3 , inhSigs = happy_var_2 , inhNodeUid = happy_var_4 , inhSolvSort = Nothing  }; happyConditions = []++happyConditions_5 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}}}

happyReduce_145 = happySpecReduce_1  73# happyReduction_145
happyReduction_145 happy_x_1
	 =  case happyOut86 happy_x_1 of { happy_var_1 -> 
	happyIn85
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhVarSigs = (inhVarSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSolvSort = case ( (inhSolvSort happySelfAttrs) , (synExpdSort happySubAttrs_1) ) of { (Nothing, []) -> error ("\nTXS0411: " ++ "Sort of value expression not resolved\n") ; (Nothing, [sid]) -> Just sid ; (Nothing, sids) -> error ("\nTXS0412: " ++ "Sort of value expression not uniquely resolved: "++ (show sids)++"\n") ; (Just sid, ss) -> if sid `elem` ss then Just sid else error ("\nTXS0413: " ++ "Expected sort of value expression: "++ (show sid)++"\n does not match any of the"++ " possible actual sort(s): "++(show ss)++"\n") }  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_146 = happyReduce 5# 74# happyReduction_146
happyReduction_146 (happy_x_5 `HappyStk`
	happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOut90 happy_x_2 of { happy_var_2 -> 
	case happyOut86 happy_x_4 of { happy_var_4 -> 
	case happyOut13 happy_x_5 of { happy_var_5 -> 
	happyIn86
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = foldr cstrEnv (parseVal happySubAttrs_4) (parseVal happySubAttrs_2) , synExpdSort = (synExpdSort happySubAttrs_4) , synMaxUid = (synMaxUid happySubAttrs_4)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; (happyConditions_4,happySubAttrs_4) = happy_var_4 happyEmptyAttrs{ inhVarSigs = map (\(IdVar v) -> v ) $ scopeMerge (map IdVar (inhVarSigs happySelfAttrs) ) (map IdVar (synVarSigs happySubAttrs_2) ) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_2) + 1 , inhSolvSort = (inhSolvSort happySelfAttrs)  }; (happyConditions_5,happySubAttrs_5) = happy_var_5 happyEmptyAttrs; happyConditions = []++happyConditions_2++happyConditions_4++happyConditions_5 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}}

happyReduce_147 = happyReduce 7# 74# happyReduction_147
happyReduction_147 (happy_x_7 `HappyStk`
	happy_x_6 `HappyStk`
	happy_x_5 `HappyStk`
	happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOut89 happy_x_2 of { happy_var_2 -> 
	case happyOut86 happy_x_4 of { happy_var_4 -> 
	case happyOut86 happy_x_6 of { happy_var_6 -> 
	case happyOut14 happy_x_7 of { happy_var_7 -> 
	happyIn86
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = cstrIte (cstrAnd (Set.fromList (parseVal happySubAttrs_2) )) (parseVal happySubAttrs_4) (parseVal happySubAttrs_6) , synExpdSort = (synExpdSort happySubAttrs_4) `List.intersect` (synExpdSort happySubAttrs_6) , synMaxUid = (synMaxUid happySubAttrs_6)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhVarSigs = (inhVarSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSolvSorts = [ if sortId_Bool `elem` sids then Just sortId_Bool else error ("\nTXS0421: " ++ "Sort of constraint must be 'Bool', "++ " instead of: "++(show sids)++"\n") | sids <- (synExpdSorts happySubAttrs_2) ]  }; (happyConditions_4,happySubAttrs_4) = happy_var_4 happyEmptyAttrs{ inhVarSigs = (inhVarSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_2) + 1 , inhSolvSort = (inhSolvSort happySelfAttrs)  }; (happyConditions_6,happySubAttrs_6) = happy_var_6 happyEmptyAttrs{ inhVarSigs = (inhVarSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_4) + 1 , inhSolvSort = (inhSolvSort happySelfAttrs)  }; (happyConditions_7,happySubAttrs_7) = happy_var_7 happyEmptyAttrs; happyConditions = []++happyConditions_2++happyConditions_4++happyConditions_6++happyConditions_7 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}}}

happyReduce_148 = happySpecReduce_3  74# happyReduction_148
happyReduction_148 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut86 happy_x_1 of { happy_var_1 -> 
	case happyOutTok happy_x_2 of { (Toperator         posoperator happy_var_2) -> 
	case happyOut87 happy_x_3 of { happy_var_3 -> 
	happyIn86
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = let vexps =[ h [ (parseVal happySubAttrs_1) , (parseVal happySubAttrs_3) ] | (Signature [l,r] res, h) <- Map.toList (signHandler happy_var_2 (Sigs.func (inhSigs happySelfAttrs) )) , l `elem` (synExpdSort happySubAttrs_1) , r `elem` (synExpdSort happySubAttrs_3) , case (inhSolvSort happySelfAttrs) of { Nothing -> True ; Just sid -> res ==sid } ] in case length vexps of { 0 -> error ("\nTXS0422: " ++ "Operator not resolved: '" ++ show happy_var_2 ++ "'\n" ++ "Argument 0: " ++ show (parseVal happySubAttrs_1) ++ "\n" ++ "Argument 1: " ++ show (parseVal happySubAttrs_3) ++ "\n" ) ; 1 -> head vexps ; n -> error ("\nTXS0423: "++ "Operator not uniquely resolved: '" ++ show happy_var_2 ++ "'\n") } , synExpdSort = [ res | Signature [l,r] res <- signatures happy_var_2 (Sigs.func (inhSigs happySelfAttrs) ) , l `elem` (synExpdSort happySubAttrs_1) , r `elem` (synExpdSort happySubAttrs_3) ] , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhVarSigs = (inhVarSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSolvSort = let pargs =[ l | Signature [l,r] res <- signatures happy_var_2 (Sigs.func (inhSigs happySelfAttrs) ) , l `elem` (synExpdSort happySubAttrs_1) , r `elem` (synExpdSort happySubAttrs_3) , case (inhSolvSort happySelfAttrs) of { Nothing -> True ; Just sid -> res ==sid } ] in if (length pargs) ==1 then Just (head pargs) else Nothing  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhVarSigs = (inhVarSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhSolvSort = let pargs =[ r | Signature [l,r] res <- signatures happy_var_2 (Sigs.func (inhSigs happySelfAttrs) ) , l `elem` (synExpdSort happySubAttrs_1) , r `elem` (synExpdSort happySubAttrs_3) , case (inhSolvSort happySelfAttrs) of { Nothing -> True ; Just sid -> res ==sid } ] in if (length pargs) ==1 then Just (head pargs) else Nothing  }; happyConditions = []++happyConditions_1++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}}

happyReduce_149 = happySpecReduce_2  74# happyReduction_149
happyReduction_149 happy_x_2
	happy_x_1
	 =  case happyOut87 happy_x_1 of { happy_var_1 -> 
	case happyOut56 happy_x_2 of { happy_var_2 -> 
	happyIn86
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) , synExpdSort = [ (parseVal happySubAttrs_2) ] , synMaxUid = (synMaxUid happySubAttrs_2)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhVarSigs = (inhVarSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSolvSort = Just (parseVal happySubAttrs_2)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = [if (inhSolvSort happySelfAttrs) ==(inhSolvSort happySubAttrs_1) then () else error ("\nTXS0424 : " ++ "Explicit sort does not correspond with actual sort:"++ (show (SortId.name (parseVal happySubAttrs_2) ))++"\n") ]++happyConditions_1++happyConditions_2 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_150 = happySpecReduce_1  74# happyReduction_150
happyReduction_150 happy_x_1
	 =  case happyOut87 happy_x_1 of { happy_var_1 -> 
	happyIn86
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) , synExpdSort = (synExpdSort happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhVarSigs = (inhVarSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSolvSort = (inhSolvSort happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_151 = happySpecReduce_1  75# happyReduction_151
happyReduction_151 happy_x_1
	 =  case happyOutTok happy_x_1 of { (Tsmallid          possmallid  happy_var_1) -> 
	happyIn87
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = let vexps =[ h [] | (Signature [] res, h) <- Map.toList (signHandler happy_var_1 (Sigs.func (inhSigs happySelfAttrs) )) , case (inhSolvSort happySelfAttrs) of { Nothing -> True ; Just sid -> res ==sid } ] ++ [ cstrVar vid | vid@(VarId nm uid srt) <- (inhVarSigs happySelfAttrs) , nm ==happy_var_1 , case (inhSolvSort happySelfAttrs) of { Nothing -> True ; Just sid -> srt ==sid } ] in if (length vexps) ==1 then head vexps else if (length vexps) ==0 then error ("\nTXS0430: Identifier not resolved: " ++ show happy_var_1 ++"\n") else error ("\nTXS0431: Identifier not uniquely resolved: " ++ show happy_var_1 ++"\n") , synExpdSort = [ res | Signature [] res <- signatures happy_var_1 (Sigs.func (inhSigs happySelfAttrs) ) ] ++ [ srt | VarId nm uid srt <- (inhVarSigs happySelfAttrs) , nm ==happy_var_1 ] , synMaxUid = (inhNodeUid happySelfAttrs)  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)}

happyReduce_152 = happyReduce 4# 75# happyReduction_152
happyReduction_152 (happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOutTok happy_x_1 of { (Tsmallid          possmallid  happy_var_1) -> 
	case happyOut88 happy_x_3 of { happy_var_3 -> 
	happyIn87
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = let vexps =[ h (parseVal happySubAttrs_3) | (Signature args res, h) <- Map.toList (signHandler happy_var_1 (Sigs.func (inhSigs happySelfAttrs) )) , length args ==length (synExpdSorts happySubAttrs_3) , and [ a`elem`as | (a,as) <- (zip args (synExpdSorts happySubAttrs_3) ) ] , case (inhSolvSort happySelfAttrs) of { Nothing -> True ; Just sid -> res ==sid } ] in if (length vexps) ==1 then head vexps else error $ "\nTXS0432: " ++ "Function not (uniquely) resolved: " ++ (show happy_var_1 ) ++ "\nExpected Args: " ++ (pshow (synExpdSorts happySubAttrs_3) ) ++ "\nFound: " ++ (pshow vexps) , synExpdSort = [ res | Signature args res <- signatures happy_var_1 (Sigs.func (inhSigs happySelfAttrs) ) , length args ==length (synExpdSorts happySubAttrs_3) , and [ a`elem`as | (a,as) <- zip args (synExpdSorts happySubAttrs_3) ] ] , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhVarSigs = (inhVarSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSolvSorts = let pargs =[ args | Signature args res <- signatures happy_var_1 (Sigs.func (inhSigs happySelfAttrs) ) , length args ==length (synExpdSorts happySubAttrs_3) , and [ a`elem`as | (a,as) <- (zip args (synExpdSorts happySubAttrs_3) ) ] , case (inhSolvSort happySelfAttrs) of { Nothing -> True ; Just sid -> res ==sid } ] in if (length pargs) ==1 then [ Just arg | arg <- concat pargs ] else [ Nothing | x <- (synExpdSorts happySubAttrs_3) ]  }; happyConditions = []++happyConditions_3 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}

happyReduce_153 = happySpecReduce_2  75# happyReduction_153
happyReduction_153 happy_x_2
	happy_x_1
	 =  case happyOutTok happy_x_1 of { (Toperator         posoperator happy_var_1) -> 
	case happyOut87 happy_x_2 of { happy_var_2 -> 
	happyIn87
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = let vexps =[ h [ (parseVal happySubAttrs_2) ] | (Signature [a] res, h) <- Map.toList (signHandler happy_var_1 (Sigs.func (inhSigs happySelfAttrs) )) , a `elem` (synExpdSort happySubAttrs_2) , case (inhSolvSort happySelfAttrs) of { Nothing -> True ; Just sid -> res ==sid } ] in case (length vexps) of { 1 -> head vexps ; 0 -> error ("\nTXS0433: Operator not resolved: '" ++ show happy_var_1 ++ "'\n") ; _ -> error ("\nTXS0433: Operator not uniquely resolved: '" ++ show happy_var_1 ++ "'\n") } , synExpdSort = [ res | Signature [a] res <- signatures happy_var_1 (Sigs.func (inhSigs happySelfAttrs) ) , a `elem` (synExpdSort happySubAttrs_2) ] , synMaxUid = (synMaxUid happySubAttrs_2)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhVarSigs = (inhVarSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSolvSort = let pargs =[ a | Signature [a] res <- signatures happy_var_1 (Sigs.func (inhSigs happySelfAttrs) ) , a `elem` (synExpdSort happySubAttrs_2) , case (inhSolvSort happySelfAttrs) of { Nothing -> True ; Just sid -> res ==sid } ] in if (length pargs) ==1 then Just (head pargs) else Nothing  }; happyConditions = []++happyConditions_2 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_154 = happySpecReduce_1  75# happyReduction_154
happyReduction_154 happy_x_1
	 =  case happyOutTok happy_x_1 of { (Tcapid            poscapid    happy_var_1) -> 
	happyIn87
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = let vexps =[ handler [] | (Signature [] res, handler) <- Map.toList (FuncTable.signHandler happy_var_1 (Sigs.func (inhSigs happySelfAttrs) )) , case (inhSolvSort happySelfAttrs) of { Nothing -> True ; Just sid -> res ==sid } ] in case (length vexps) of { 1 -> head vexps ; 0 -> error ("\nTXS0436: Constructor not resolved: " ++ show happy_var_1 ++"\n" ++ "Available signatures for " ++ show happy_var_1 ++ " are \n* " ++ Utils.join "\n* " (map show (FuncTable.signatures happy_var_1 (Sigs.func (inhSigs happySelfAttrs) ))) ) ; _ -> error ("\nTXS0436: Constructor not uniquely resolved: " ++ show happy_var_1 ++"\n" ++ "Matching signatures for " ++ show happy_var_1 ++ " are \n* " ++ Utils.join "\n* " (map show [ s | s@(Signature [] _) <- FuncTable.signatures happy_var_1 (Sigs.func (inhSigs happySelfAttrs) ) ]) ) } , synExpdSort = [ res | Signature [] res <- FuncTable.signatures happy_var_1 (Sigs.func (inhSigs happySelfAttrs) ) ] , synMaxUid = (inhNodeUid happySelfAttrs)  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)}

happyReduce_155 = happyReduce 4# 75# happyReduction_155
happyReduction_155 (happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOutTok happy_x_1 of { (Tcapid            poscapid    happy_var_1) -> 
	case happyOut88 happy_x_3 of { happy_var_3 -> 
	happyIn87
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = let vexps =[ handler (parseVal happySubAttrs_3) | (Signature args res, handler) <- Map.toList (FuncTable.signHandler happy_var_1 (Sigs.func (inhSigs happySelfAttrs) )) , length args ==length (synExpdSorts happySubAttrs_3) , and [ a `elem` as | (a,as) <- (zip args (synExpdSorts happySubAttrs_3) ) ] , case (inhSolvSort happySelfAttrs) of { Nothing -> True ; Just sid -> res ==sid } ] in case (length vexps) of { 1 -> head vexps ; 0 -> error ("\nTXS0434: Constructor not resolved: " ++ show happy_var_1 ++ "\n" ++ "Available signatures for " ++ show happy_var_1 ++ " are \n* " ++ Utils.join "\n* " (map show (FuncTable.signatures happy_var_1 (Sigs.func (inhSigs happySelfAttrs) ))) ) ; _ -> error ("\nTXS0434: Constructor not uniquely resolved: " ++ show happy_var_1 ++"\n" ++ "Matching signatures for " ++ show happy_var_1 ++ " are \n* " ++ Utils.join "\n* " (map show [ s | s@(Signature args _) <- FuncTable.signatures happy_var_1 (Sigs.func (inhSigs happySelfAttrs) ) , length args ==length (synExpdSorts happySubAttrs_3) , and [ a `elem` as | (a,as) <- zip args (synExpdSorts happySubAttrs_3) ] ]) ) } , synExpdSort = [ res | Signature args res <- signatures happy_var_1 (Sigs.func (inhSigs happySelfAttrs) ) , length args ==length (synExpdSorts happySubAttrs_3) , and [ a `elem` as | (a,as) <- zip args (synExpdSorts happySubAttrs_3) ] ] , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhVarSigs = (inhVarSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSolvSorts = let pargs =[ args | Signature args res <- signatures happy_var_1 (Sigs.func (inhSigs happySelfAttrs) ) , length args ==length (synExpdSorts happySubAttrs_3) , and [ a `elem` as | (a,as) <- (zip args (synExpdSorts happySubAttrs_3) ) ] , case (inhSolvSort happySelfAttrs) of { Nothing -> True ; Just sid -> res ==sid } ] in if (length pargs) ==1 then [ Just arg | arg <- concat pargs ] else [ Nothing | x <- (synExpdSorts happySubAttrs_3) ]  }; happyConditions = []++happyConditions_3 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}

happyReduce_156 = happySpecReduce_1  75# happyReduction_156
happyReduction_156 happy_x_1
	 =  case happyOut94 happy_x_1 of { happy_var_1 -> 
	happyIn87
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = cstrConst (parseVal happySubAttrs_1) , synExpdSort = (synExpdSort happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSolvSort = (inhSolvSort happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_157 = happySpecReduce_3  75# happyReduction_157
happyReduction_157 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut86 happy_x_2 of { happy_var_2 -> 
	happyIn87
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_2) , synExpdSort = (synExpdSort happySubAttrs_2) , synMaxUid = (synMaxUid happySubAttrs_2)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhVarSigs = (inhVarSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSolvSort = (inhSolvSort happySelfAttrs)  }; happyConditions = []++happyConditions_2 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_158 = happySpecReduce_2  75# happyReduction_158
happyReduction_158 happy_x_2
	happy_x_1
	 =  case happyOutTok happy_x_2 of { (Tstring           posstring   happy_var_2) -> 
	happyIn87
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = cstrError happy_var_2 , synExpdSort = Map.elems (Sigs.sort (inhSigs happySelfAttrs) ) , synMaxUid = (inhNodeUid happySelfAttrs)  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)}

happyReduce_159 = happySpecReduce_0  76# happyReduction_159
happyReduction_159  =  happyIn88
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [] , synExpdSorts = [] , synMaxUid = (inhNodeUid happySelfAttrs)  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)

happyReduce_160 = happySpecReduce_1  76# happyReduction_160
happyReduction_160 happy_x_1
	 =  case happyOut89 happy_x_1 of { happy_var_1 -> 
	happyIn88
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) , synExpdSorts = (synExpdSorts happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhVarSigs = (inhVarSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSolvSorts = (inhSolvSorts happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_161 = happySpecReduce_1  77# happyReduction_161
happyReduction_161 happy_x_1
	 =  case happyOut86 happy_x_1 of { happy_var_1 -> 
	happyIn89
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [ (parseVal happySubAttrs_1) ] , synExpdSorts = [ (synExpdSort happySubAttrs_1) ] , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhVarSigs = (inhVarSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSolvSort = case (inhSolvSorts happySelfAttrs) of { [] -> Nothing ; (s:ss) -> s }  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_162 = happySpecReduce_3  77# happyReduction_162
happyReduction_162 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut89 happy_x_1 of { happy_var_1 -> 
	case happyOut86 happy_x_3 of { happy_var_3 -> 
	happyIn89
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) ++ [ (parseVal happySubAttrs_3) ] , synExpdSorts = (synExpdSorts happySubAttrs_1) ++ [ (synExpdSort happySubAttrs_3) ] , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhVarSigs = (inhVarSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSolvSorts = if null (inhSolvSorts happySelfAttrs) then [] else init (inhSolvSorts happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhVarSigs = (inhVarSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhSolvSort = if null (inhSolvSorts happySelfAttrs) then Nothing else last (inhSolvSorts happySelfAttrs)  }; happyConditions = []++happyConditions_1++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_163 = happySpecReduce_1  78# happyReduction_163
happyReduction_163 happy_x_1
	 =  case happyOut92 happy_x_1 of { happy_var_1 -> 
	happyIn90
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [ (parseVal happySubAttrs_1) ] , synVarSigs = (synVarSigs happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_164 = happySpecReduce_3  78# happyReduction_164
happyReduction_164 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut92 happy_x_1 of { happy_var_1 -> 
	case happyOut90 happy_x_3 of { happy_var_3 -> 
	happyIn90
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) : (parseVal happySubAttrs_3) , synVarSigs = map (\(IdVar v) -> v ) $ scopeMerge (map IdVar (synVarSigs happySubAttrs_1) ) (map IdVar (synVarSigs happySubAttrs_3) ) , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhVarSigs = map (\(IdVar v) -> v ) $ scopeMerge (map IdVar (inhVarSigs happySelfAttrs) ) (map IdVar (synVarSigs happySubAttrs_1) )  }; happyConditions = []++happyConditions_1++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_165 = happyReduce 5# 79# happyReduction_165
happyReduction_165 (happy_x_5 `HappyStk`
	happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOutTok happy_x_2 of { (Csigs             happy_var_2) -> 
	case happyOutTok happy_x_3 of { (Cvarenv           happy_var_3) -> 
	case happyOutTok happy_x_4 of { (Cunid             happy_var_4) -> 
	case happyOut92 happy_x_5 of { happy_var_5 -> 
	happyIn91
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = ( (synMaxUid happySubAttrs_5) , (parseVal happySubAttrs_5) )  }; (happyConditions_5,happySubAttrs_5) = happy_var_5 happyEmptyAttrs{ inhSigs = happy_var_2 , inhNodeUid = happy_var_4 , inhVarSigs = happy_var_3  }; happyConditions = []++happyConditions_5 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}}}

happyReduce_166 = happySpecReduce_1  80# happyReduction_166
happyReduction_166 happy_x_1
	 =  case happyOut93 happy_x_1 of { happy_var_1 -> 
	happyIn92
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) , synVarSigs = (synVarSigs happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_167 = happySpecReduce_3  80# happyReduction_167
happyReduction_167 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut92 happy_x_1 of { happy_var_1 -> 
	case happyOut93 happy_x_3 of { happy_var_3 -> 
	happyIn92
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = ( (parseVal happySubAttrs_1) `Map.union` (parseVal happySubAttrs_3) )::VEnv , synVarSigs = (synVarSigs happySubAttrs_1) ++ (synVarSigs happySubAttrs_3) , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; happyConditions = [let dbls =doubles ( map ( sig . IdVar ) (synVarSigs happySelfAttrs) ) in if null dbls then () else error ("\nTXS0452: " ++ "Double defined value identifiers in definition: "++ (show dbls)++"\n") ]++happyConditions_1++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_168 = happyReduce 4# 81# happyReduction_168
happyReduction_168 (happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOutTok happy_x_1 of { (Tsmallid          possmallid  happy_var_1) -> 
	case happyOut56 happy_x_2 of { happy_var_2 -> 
	case happyOut85 happy_x_4 of { happy_var_4 -> 
	happyIn93
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = Map.singleton (VarId happy_var_1 (inhNodeUid happySelfAttrs) (parseVal happySubAttrs_2) ) (parseVal happySubAttrs_4) , synVarSigs = [ VarId happy_var_1 (inhNodeUid happySelfAttrs) (parseVal happySubAttrs_2) ] , synMaxUid = (synMaxUid happySubAttrs_4)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; (happyConditions_4,happySubAttrs_4) = happy_var_4 happyEmptyAttrs{ inhSolvSort = Just (parseVal happySubAttrs_2) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_2) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_2++happyConditions_4 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}}

happyReduce_169 = happySpecReduce_3  81# happyReduction_169
happyReduction_169 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOutTok happy_x_1 of { (Tsmallid          possmallid  happy_var_1) -> 
	case happyOut85 happy_x_3 of { happy_var_3 -> 
	happyIn93
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = Map.singleton ( VarId happy_var_1 (inhNodeUid happySelfAttrs) (sortOf ( (parseVal happySubAttrs_3) ::VExpr)) ) (parseVal happySubAttrs_3) , synVarSigs = [ VarId happy_var_1 (inhNodeUid happySelfAttrs) (sortOf ( (parseVal happySubAttrs_3) ::VExpr)) ] , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhSolvSort = Nothing , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_170 = happySpecReduce_1  82# happyReduction_170
happyReduction_170 happy_x_1
	 =  happyIn94
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = case (inhSolvSort happySelfAttrs) of { Nothing -> Cbool True ; Just s | s ==sortId_Bool -> Cbool True ; Just _ -> error "\nTXS ERROR 0909\n" } , synExpdSort = [ sortId_Bool ] , synMaxUid = (inhNodeUid happySelfAttrs)  }; happyConditions = [case Map.lookup "Bool" (Sigs.sort (inhSigs happySelfAttrs) ) of { Just s | s ==sortId_Bool -> () ; _ -> error ("\nTXS0471: Bool constant but no sort 'Bool': True\n") } ] } in (happyConditions,happySelfAttrs)
	)

happyReduce_171 = happySpecReduce_1  82# happyReduction_171
happyReduction_171 happy_x_1
	 =  happyIn94
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = case (inhSolvSort happySelfAttrs) of { Nothing -> Cbool False ; Just s | s ==sortId_Bool -> Cbool False ; Just _ -> error "\nTXS ERROR 0910\n" } , synExpdSort = [ sortId_Bool ] , synMaxUid = (inhNodeUid happySelfAttrs)  }; happyConditions = [case Map.lookup "Bool" (Sigs.sort (inhSigs happySelfAttrs) ) of { Just s | s ==sortId_Bool -> () ; _ -> error ("\nTXS0471: Bool constant but no sort 'Bool': False\n") } ] } in (happyConditions,happySelfAttrs)
	)

happyReduce_172 = happySpecReduce_1  82# happyReduction_172
happyReduction_172 happy_x_1
	 =  case happyOutTok happy_x_1 of { (Tinteger          posinteger  happy_var_1) -> 
	happyIn94
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = case (inhSolvSort happySelfAttrs) of { Nothing -> Cint happy_var_1 ; Just s | s ==sortId_Int -> Cint happy_var_1 ; Just _ -> error "\nTXS ERROR 0911\n" } , synExpdSort = [ sortId_Int ] , synMaxUid = (inhNodeUid happySelfAttrs)  }; happyConditions = [case Map.lookup "Int" (Sigs.sort (inhSigs happySelfAttrs) ) of { Just s | s ==sortId_Int -> () ; _ -> error ("\nTXS0472: Integer constant but no sort 'Int': "++ show happy_var_1 ++"\n") } ] } in (happyConditions,happySelfAttrs)
	)}

happyReduce_173 = happySpecReduce_1  82# happyReduction_173
happyReduction_173 happy_x_1
	 =  case happyOutTok happy_x_1 of { (Tstring           posstring   happy_var_1) -> 
	happyIn94
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = case (inhSolvSort happySelfAttrs) of { Nothing -> Cstring happy_var_1 ; Just s | s ==sortId_String -> Cstring happy_var_1 ; Just _ -> error "\nTXS ERROR 0913\n" } , synExpdSort = [ sortId_String ] , synMaxUid = (inhNodeUid happySelfAttrs)  }; happyConditions = [case Map.lookup "String" (Sigs.sort (inhSigs happySelfAttrs) ) of { Just s | s ==sortId_String -> () ; _ -> error ("\nTXS0476: String constant but no sort 'String': "++ show happy_var_1 ++"\n") } ] } in (happyConditions,happySelfAttrs)
	)}

happyReduce_174 = happyReduce 4# 82# happyReduction_174
happyReduction_174 (happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOutTok happy_x_3 of { (Tregexval         posregexval happy_var_3) -> 
	happyIn94
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = case (inhSolvSort happySelfAttrs) of { Nothing -> Cregex happy_var_3 ; Just s | s ==sortId_Regex -> Cregex happy_var_3 ; Just _ -> error "\nTXS ERROR 0915\n" } , synExpdSort = [ sortId_Regex ] , synMaxUid = (inhNodeUid happySelfAttrs)  }; happyConditions = [case Map.lookup "Regex" (Sigs.sort (inhSigs happySelfAttrs) ) of { Just s | s ==sortId_Regex -> () ; _ -> error ("\nTXS0477: Regex constant but no sort 'Regex': REGEX("++ show happy_var_3 ++ ")\n") } ] } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}

happyReduce_175 = happySpecReduce_1  83# happyReduction_175
happyReduction_175 happy_x_1
	 =  case happyOutTok happy_x_1 of { (Tcapid            poscapid    happy_var_1) -> 
	happyIn95
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = happy_var_1  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)}

happyReduce_176 = happySpecReduce_1  83# happyReduction_176
happyReduction_176 happy_x_1
	 =  case happyOutTok happy_x_1 of { (Tsmallid          possmallid  happy_var_1) -> 
	happyIn95
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = happy_var_1  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)}

happyReduce_177 = happySpecReduce_0  84# happyReduction_177
happyReduction_177  =  happyIn96
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = []  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)

happyReduce_178 = happySpecReduce_1  84# happyReduction_178
happyReduction_178 happy_x_1
	 =  case happyOut97 happy_x_1 of { happy_var_1 -> 
	happyIn96
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_179 = happySpecReduce_1  85# happyReduction_179
happyReduction_179 happy_x_1
	 =  case happyOut95 happy_x_1 of { happy_var_1 -> 
	happyIn97
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [ (parseVal happySubAttrs_1) ]  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_180 = happySpecReduce_3  85# happyReduction_180
happyReduction_180 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut97 happy_x_1 of { happy_var_1 -> 
	case happyOut95 happy_x_3 of { happy_var_3 -> 
	happyIn97
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) ++ [ (parseVal happySubAttrs_3) ]  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs; happyConditions = []++happyConditions_1++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_181 = happySpecReduce_0  86# happyReduction_181
happyReduction_181  =  happyIn98
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = []  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)

happyReduce_182 = happySpecReduce_1  86# happyReduction_182
happyReduction_182 happy_x_1
	 =  case happyOut99 happy_x_1 of { happy_var_1 -> 
	happyIn98
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_183 = happySpecReduce_1  87# happyReduction_183
happyReduction_183 happy_x_1
	 =  case happyOutTok happy_x_1 of { (Tcapid            poscapid    happy_var_1) -> 
	happyIn99
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [ happy_var_1 ]  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)}

happyReduce_184 = happySpecReduce_3  87# happyReduction_184
happyReduction_184 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut99 happy_x_1 of { happy_var_1 -> 
	case happyOutTok happy_x_3 of { (Tcapid            poscapid    happy_var_3) -> 
	happyIn99
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) ++ [ happy_var_3 ]  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_185 = happySpecReduce_0  88# happyReduction_185
happyReduction_185  =  happyIn100
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = []  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)

happyReduce_186 = happySpecReduce_1  88# happyReduction_186
happyReduction_186 happy_x_1
	 =  case happyOut101 happy_x_1 of { happy_var_1 -> 
	happyIn100
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_187 = happySpecReduce_1  89# happyReduction_187
happyReduction_187 happy_x_1
	 =  case happyOutTok happy_x_1 of { (Tcapid            poscapid    happy_var_1) -> 
	happyIn101
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [ happy_var_1 ]  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)}

happyReduce_188 = happySpecReduce_3  89# happyReduction_188
happyReduction_188 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut101 happy_x_1 of { happy_var_1 -> 
	case happyOutTok happy_x_3 of { (Tcapid            poscapid    happy_var_3) -> 
	happyIn101
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) ++ [ happy_var_3 ]  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_189 = happySpecReduce_1  90# happyReduction_189
happyReduction_189 happy_x_1
	 =  case happyOutTok happy_x_1 of { (Tcapid            poscapid    happy_var_1) -> 
	happyIn102
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [ happy_var_1 ]  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)}

happyReduce_190 = happySpecReduce_3  90# happyReduction_190
happyReduction_190 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut102 happy_x_1 of { happy_var_1 -> 
	case happyOutTok happy_x_3 of { (Tcapid            poscapid    happy_var_3) -> 
	happyIn102
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) ++ [ happy_var_3 ]  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_191 = happySpecReduce_1  91# happyReduction_191
happyReduction_191 happy_x_1
	 =  case happyOutTok happy_x_1 of { (Tsmallid          possmallid  happy_var_1) -> 
	happyIn103
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [ happy_var_1 ]  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)}

happyReduce_192 = happySpecReduce_3  91# happyReduction_192
happyReduction_192 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut103 happy_x_1 of { happy_var_1 -> 
	case happyOutTok happy_x_3 of { (Tsmallid          possmallid  happy_var_3) -> 
	happyIn103
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) ++ [ happy_var_3 ]  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_193 = happySpecReduce_1  92# happyReduction_193
happyReduction_193 happy_x_1
	 =  case happyOut105 happy_x_1 of { happy_var_1 -> 
	happyIn104
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = case (parseVal happySubAttrs_1) of { ( sts, vars, trs, [init], [venv] ) -> StAut init venv trs ; _ -> error $ "\nTXS1010: " ++ "error in state atomaton def: " ++ (show (Sigs.pro (inhSigs happySelfAttrs) )) ++ "\n" } , synExitSorts = (synExitSorts happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhStateSigs = (synStateSigs happySubAttrs_1) , inhVarSigs = (inhVarSigs happySelfAttrs) , inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhStVarSigs = (synStVarSigs happySubAttrs_1)  }; happyConditions = [let ( sts, vars, trs, inits, venvs ) =(parseVal happySubAttrs_1) in if not $ null $ doubles (map ( sig . IdStat ) sts) then error $ "\nTXS1011: " ++ "Double defined states: " ++ (show (Sigs.pro (inhSigs happySelfAttrs) )) ++ "\n" else if not $ null $ doubles ( map ( sig . IdVar ) (vars ++ (inhVarSigs happySelfAttrs) ) ) then error $ "\nTXS1012: " ++ "Double defined state/parameter vars: " ++ (show (Sigs.pro (inhSigs happySelfAttrs) )) ++ "\n" else if not $ Set.fromList vars ==Set.fromList (Map.keys $ head venvs) then error $ "\nTXS1015: " ++ "No (unique) initial values for " ++ "all state vars: " ++ (show (Sigs.pro (inhSigs happySelfAttrs) )) ++ "\n" else () ]++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_194 = happySpecReduce_1  93# happyReduction_194
happyReduction_194 happy_x_1
	 =  case happyOut106 happy_x_1 of { happy_var_1 -> 
	happyIn105
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) , synExitSorts = (synExitSorts happySubAttrs_1) , synStVarSigs = (synStVarSigs happySubAttrs_1) , synStateSigs = (synStateSigs happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhStateSigs = (inhStateSigs happySelfAttrs) , inhVarSigs = (inhVarSigs happySelfAttrs) , inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhStVarSigs = (inhStVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_195 = happySpecReduce_2  93# happyReduction_195
happyReduction_195 happy_x_2
	happy_x_1
	 =  case happyOut105 happy_x_1 of { happy_var_1 -> 
	case happyOut106 happy_x_2 of { happy_var_2 -> 
	happyIn105
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) +++ (parseVal happySubAttrs_2) , synExitSorts = (synExitSorts happySubAttrs_1) <<+>> (synExitSorts happySubAttrs_2) , synStVarSigs = (synStVarSigs happySubAttrs_1) ++ (synStVarSigs happySubAttrs_2) , synStateSigs = (synStateSigs happySubAttrs_1) ++ (synStateSigs happySubAttrs_2) , synMaxUid = (synMaxUid happySubAttrs_2)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhStateSigs = (inhStateSigs happySelfAttrs) , inhVarSigs = (inhVarSigs happySelfAttrs) , inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhStVarSigs = (inhStVarSigs happySelfAttrs)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhStateSigs = (inhStateSigs happySelfAttrs) , inhVarSigs = (inhVarSigs happySelfAttrs) , inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhStVarSigs = (inhStVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1++happyConditions_2 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_196 = happySpecReduce_1  94# happyReduction_196
happyReduction_196 happy_x_1
	 =  case happyOut107 happy_x_1 of { happy_var_1 -> 
	happyIn106
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = ( (parseVal happySubAttrs_1) , [], [], [], [] ) , synExitSorts = NoExit , synStVarSigs = [] , synStateSigs = (synStateSigs happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_197 = happySpecReduce_1  94# happyReduction_197
happyReduction_197 happy_x_1
	 =  case happyOut108 happy_x_1 of { happy_var_1 -> 
	happyIn106
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = ( [], (parseVal happySubAttrs_1) , [], [], [] ) , synExitSorts = NoExit , synStVarSigs = (synStVarSigs happySubAttrs_1) , synStateSigs = [] , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_198 = happySpecReduce_1  94# happyReduction_198
happyReduction_198 happy_x_1
	 =  case happyOut109 happy_x_1 of { happy_var_1 -> 
	happyIn106
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = let (stid,venv) =(parseVal happySubAttrs_1) in ( [] , [], [], [stid] , [venv] ) , synExitSorts = NoExit , synStVarSigs = [] , synStateSigs = [] , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhStateSigs = (inhStateSigs happySelfAttrs) , inhVarSigs = (inhVarSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhStVarSigs = (inhStVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_199 = happySpecReduce_1  94# happyReduction_199
happyReduction_199 happy_x_1
	 =  case happyOut110 happy_x_1 of { happy_var_1 -> 
	happyIn106
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = ( [], [], (parseVal happySubAttrs_1) , [], [] ) , synExitSorts = (synExitSorts happySubAttrs_1) , synStVarSigs = [] , synStateSigs = [] , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhStateSigs = (inhStateSigs happySelfAttrs) , inhVarSigs = (inhVarSigs happySelfAttrs) , inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhStVarSigs = (inhStVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_200 = happySpecReduce_2  95# happyReduction_200
happyReduction_200 happy_x_2
	happy_x_1
	 =  case happyOut97 happy_x_2 of { happy_var_2 -> 
	happyIn107
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (synStateSigs happySelfAttrs) , synStateSigs = [ StatId nm uid pid | (nm,uid) <- zip (parseVal happySubAttrs_2) [ (inhNodeUid happySelfAttrs) ..] , pid <- Sigs.pro (inhSigs happySelfAttrs) ] , synMaxUid = (inhNodeUid happySelfAttrs) + (length (parseVal happySubAttrs_2) )  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs; happyConditions = [let dbls =doubles (parseVal happySubAttrs_2) in if (null dbls) && (length (Sigs.pro (inhSigs happySelfAttrs) ) ==1) then () else error $ "\nTXS1031: " ++ "Double defined states: " ++ (show dbls) ++ "\n" ]++happyConditions_2 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_201 = happySpecReduce_1  96# happyReduction_201
happyReduction_201 happy_x_1
	 =  happyIn108
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [] , synStVarSigs = [] , synMaxUid = (inhNodeUid happySelfAttrs)  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)

happyReduce_202 = happySpecReduce_2  96# happyReduction_202
happyReduction_202 happy_x_2
	happy_x_1
	 =  case happyOut65 happy_x_2 of { happy_var_2 -> 
	happyIn108
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_2) , synStVarSigs = (parseVal happySubAttrs_2) , synMaxUid = (synMaxUid happySubAttrs_2)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSigs = (inhSigs happySelfAttrs)  }; happyConditions = [let dbls =doubles ( map ( sig . IdVar ) (parseVal happySubAttrs_2) ) in if null dbls then () else error ("\nTXS1041: " ++ "Double defined state variables: " ++ (show dbls) ++ "\n") ]++happyConditions_2 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_203 = happySpecReduce_3  97# happyReduction_203
happyReduction_203 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut117 happy_x_2 of { happy_var_2 -> 
	case happyOut114 happy_x_3 of { happy_var_3 -> 
	happyIn109
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = ( (parseVal happySubAttrs_2) , (parseVal happySubAttrs_3) ) , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhStateSigs = (inhStateSigs happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhVarSigs = (inhVarSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_2) + 1 , inhStVarSigs = (inhStVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_2++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_204 = happySpecReduce_2  98# happyReduction_204
happyReduction_204 happy_x_2
	happy_x_1
	 =  case happyOut111 happy_x_2 of { happy_var_2 -> 
	happyIn110
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_2) , synExitSorts = (synExitSorts happySubAttrs_2) , synMaxUid = (synMaxUid happySubAttrs_2)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhStateSigs = (inhStateSigs happySelfAttrs) , inhVarSigs = (inhVarSigs happySelfAttrs) , inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhStVarSigs = (inhStVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_2 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_205 = happySpecReduce_1  99# happyReduction_205
happyReduction_205 happy_x_1
	 =  case happyOut112 happy_x_1 of { happy_var_1 -> 
	happyIn111
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = [ (parseVal happySubAttrs_1) ] , synExitSorts = (synExitSorts happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhStateSigs = (inhStateSigs happySelfAttrs) , inhVarSigs = (inhVarSigs happySelfAttrs) , inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhStVarSigs = (inhStVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_206 = happySpecReduce_2  99# happyReduction_206
happyReduction_206 happy_x_2
	happy_x_1
	 =  case happyOut111 happy_x_1 of { happy_var_1 -> 
	case happyOut112 happy_x_2 of { happy_var_2 -> 
	happyIn111
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) ++ [ (parseVal happySubAttrs_2) ] , synExitSorts = (synExitSorts happySubAttrs_1) <<+>> (synExitSorts happySubAttrs_2) , synMaxUid = (synMaxUid happySubAttrs_2)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhStateSigs = (inhStateSigs happySelfAttrs) , inhVarSigs = (inhVarSigs happySelfAttrs) , inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhStVarSigs = (inhStVarSigs happySelfAttrs)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhStateSigs = (inhStateSigs happySelfAttrs) , inhVarSigs = (inhVarSigs happySelfAttrs) , inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhStVarSigs = (inhStVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1++happyConditions_2 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_207 = happySpecReduce_3  99# happyReduction_207
happyReduction_207 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut111 happy_x_1 of { happy_var_1 -> 
	case happyOut112 happy_x_3 of { happy_var_3 -> 
	happyIn111
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) ++ [ (parseVal happySubAttrs_3) ] , synExitSorts = (synExitSorts happySubAttrs_1) <<+>> (synExitSorts happySubAttrs_3) , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhStateSigs = (inhStateSigs happySelfAttrs) , inhVarSigs = (inhVarSigs happySelfAttrs) , inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhStVarSigs = (inhStVarSigs happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhStateSigs = (inhStateSigs happySelfAttrs) , inhVarSigs = (inhVarSigs happySelfAttrs) , inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhStVarSigs = (inhStVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_208 = happyReduce 7# 100# happyReduction_208
happyReduction_208 (happy_x_7 `HappyStk`
	happy_x_6 `HappyStk`
	happy_x_5 `HappyStk`
	happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOut117 happy_x_1 of { happy_var_1 -> 
	case happyOut78 happy_x_3 of { happy_var_3 -> 
	case happyOut113 happy_x_4 of { happy_var_4 -> 
	case happyOut114 happy_x_5 of { happy_var_5 -> 
	case happyOut117 happy_x_7 of { happy_var_7 -> 
	happyIn112
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = Trans (parseVal happySubAttrs_1) (ActOffer (parseVal happySubAttrs_3) (cstrAnd (Set.fromList (parseVal happySubAttrs_4) ))) (parseVal happySubAttrs_5) (parseVal happySubAttrs_7) , synExitSorts = (synExitSorts happySubAttrs_3) , synMaxUid = (synMaxUid happySubAttrs_7)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhStateSigs = (inhStateSigs happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs) ++ (inhStVarSigs happySelfAttrs)  }; (happyConditions_4,happySubAttrs_4) = happy_var_4 happyEmptyAttrs{ inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_3) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs) ++ (inhStVarSigs happySelfAttrs) ++ (synVarSigs happySubAttrs_3)  }; (happyConditions_5,happySubAttrs_5) = happy_var_5 happyEmptyAttrs{ inhVarSigs = (inhVarSigs happySelfAttrs) ++ (inhStVarSigs happySelfAttrs) ++ (synVarSigs happySubAttrs_3) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_4) + 1 , inhStVarSigs = (inhStVarSigs happySelfAttrs)  }; (happyConditions_7,happySubAttrs_7) = happy_var_7 happyEmptyAttrs{ inhNodeUid = (synMaxUid happySubAttrs_5) + 1 , inhStateSigs = (inhStateSigs happySelfAttrs)  }; happyConditions = [let dbls =doubles $ map ( sig . IdVar ) $ (inhVarSigs happySelfAttrs) ++ (inhStVarSigs happySelfAttrs) ++ (synVarSigs happySubAttrs_3) in if null dbls then () else error $ "\nTXS1061: " ++ "State-, channel-, and formal-variables " ++ "overlap: " ++ (show dbls) ++ "\n" ]++happyConditions_1++happyConditions_3++happyConditions_4++happyConditions_5++happyConditions_7 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}}}}

happyReduce_209 = happyReduce 8# 100# happyReduction_209
happyReduction_209 (happy_x_8 `HappyStk`
	happy_x_7 `HappyStk`
	happy_x_6 `HappyStk`
	happy_x_5 `HappyStk`
	happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOut117 happy_x_2 of { happy_var_2 -> 
	case happyOut78 happy_x_4 of { happy_var_4 -> 
	case happyOut113 happy_x_5 of { happy_var_5 -> 
	case happyOut114 happy_x_6 of { happy_var_6 -> 
	case happyOut117 happy_x_8 of { happy_var_8 -> 
	happyIn112
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = Trans (parseVal happySubAttrs_2) (ActOffer (parseVal happySubAttrs_4) (cstrAnd (Set.fromList (parseVal happySubAttrs_5) ))) (parseVal happySubAttrs_6) (parseVal happySubAttrs_8) , synExitSorts = (synExitSorts happySubAttrs_4) , synMaxUid = (synMaxUid happySubAttrs_8)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhStateSigs = (inhStateSigs happySelfAttrs)  }; (happyConditions_4,happySubAttrs_4) = happy_var_4 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_2) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs) ++ (inhStVarSigs happySelfAttrs)  }; (happyConditions_5,happySubAttrs_5) = happy_var_5 happyEmptyAttrs{ inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_4) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs) ++ (inhStVarSigs happySelfAttrs) ++ (synVarSigs happySubAttrs_4)  }; (happyConditions_6,happySubAttrs_6) = happy_var_6 happyEmptyAttrs{ inhVarSigs = (inhVarSigs happySelfAttrs) ++ (inhStVarSigs happySelfAttrs) ++ (synVarSigs happySubAttrs_4) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_5) + 1 , inhStVarSigs = (inhStVarSigs happySelfAttrs)  }; (happyConditions_8,happySubAttrs_8) = happy_var_8 happyEmptyAttrs{ inhNodeUid = (synMaxUid happySubAttrs_6) + 1 , inhStateSigs = (inhStateSigs happySelfAttrs)  }; happyConditions = [let dbls =doubles $ map ( sig . IdVar ) $ (inhVarSigs happySelfAttrs) ++ (inhStVarSigs happySelfAttrs) ++ (synVarSigs happySubAttrs_4) in if null dbls then () else error $ "\nTXS1062: " ++ "State-, channel-, and formal-variables " ++ "overlap: " ++ (show dbls)++"\n" ]++happyConditions_2++happyConditions_4++happyConditions_5++happyConditions_6++happyConditions_8 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}}}}

happyReduce_210 = happyReduce 9# 100# happyReduction_210
happyReduction_210 (happy_x_9 `HappyStk`
	happy_x_8 `HappyStk`
	happy_x_7 `HappyStk`
	happy_x_6 `HappyStk`
	happy_x_5 `HappyStk`
	happy_x_4 `HappyStk`
	happy_x_3 `HappyStk`
	happy_x_2 `HappyStk`
	happy_x_1 `HappyStk`
	happyRest)
	 = case happyOut117 happy_x_2 of { happy_var_2 -> 
	case happyOut117 happy_x_4 of { happy_var_4 -> 
	case happyOut78 happy_x_6 of { happy_var_6 -> 
	case happyOut113 happy_x_7 of { happy_var_7 -> 
	case happyOut114 happy_x_8 of { happy_var_8 -> 
	happyIn112
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = Trans (parseVal happySubAttrs_2) (ActOffer (parseVal happySubAttrs_6) (cstrAnd (Set.fromList (parseVal happySubAttrs_7) ))) (parseVal happySubAttrs_8) (parseVal happySubAttrs_4) , synExitSorts = (synExitSorts happySubAttrs_6) , synMaxUid = (synMaxUid happySubAttrs_8)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhStateSigs = (inhStateSigs happySelfAttrs)  }; (happyConditions_4,happySubAttrs_4) = happy_var_4 happyEmptyAttrs{ inhNodeUid = (synMaxUid happySubAttrs_2) + 1 , inhStateSigs = (inhStateSigs happySelfAttrs)  }; (happyConditions_6,happySubAttrs_6) = happy_var_6 happyEmptyAttrs{ inhChanSigs = (inhChanSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_4) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs) ++ (inhStVarSigs happySelfAttrs)  }; (happyConditions_7,happySubAttrs_7) = happy_var_7 happyEmptyAttrs{ inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_6) + 1 , inhVarSigs = (inhVarSigs happySelfAttrs) ++ (inhStVarSigs happySelfAttrs) ++ (synVarSigs happySubAttrs_6)  }; (happyConditions_8,happySubAttrs_8) = happy_var_8 happyEmptyAttrs{ inhVarSigs = (inhVarSigs happySelfAttrs) ++ (inhStVarSigs happySelfAttrs) ++ (synVarSigs happySubAttrs_6) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_7) + 1 , inhStVarSigs = (inhStVarSigs happySelfAttrs)  }; happyConditions = [let dbls =doubles $ map ( sig . IdVar ) $ (inhVarSigs happySelfAttrs) ++ (inhStVarSigs happySelfAttrs) ++ (synVarSigs happySubAttrs_6) in if null dbls then () else error $ "\nTXS1063: " ++ "State-, channel-, and formal-variables " ++ "overlap: " ++ (show dbls) ++ "\n" ]++happyConditions_2++happyConditions_4++happyConditions_6++happyConditions_7++happyConditions_8 } in (happyConditions,happySelfAttrs)
	) `HappyStk` happyRest}}}}}

happyReduce_211 = happySpecReduce_0  101# happyReduction_211
happyReduction_211  =  happyIn113
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = []::[VExpr] , synMaxUid = (inhNodeUid happySelfAttrs)  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)

happyReduce_212 = happySpecReduce_3  101# happyReduction_212
happyReduction_212 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut89 happy_x_2 of { happy_var_2 -> 
	happyIn113
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_2) ::[VExpr] , synMaxUid = (synMaxUid happySubAttrs_2)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhVarSigs = (inhVarSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSolvSorts = [ if sortId_Bool `elem` sids then Just sortId_Bool else Nothing | sids <- (synExpdSorts happySubAttrs_2) ]  }; happyConditions = [let notBools =[ vexp | (vexp,msid) <- zip (parseVal happySubAttrs_2) (inhSolvSorts happySubAttrs_2) , not (msid ==Just sortId_Bool) ] in if null notBools then () else error $ "\nTXS1101: " ++ "Sort of constraint must be 'Bool': " ++ (show notBools) ++ "\n" ]++happyConditions_2 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_213 = happySpecReduce_0  102# happyReduction_213
happyReduction_213  =  happyIn114
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = Map.fromList [ (vid, cstrVar vid) | vid <- (inhStVarSigs happySelfAttrs) ] , synMaxUid = (inhNodeUid happySelfAttrs)  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)

happyReduce_214 = happySpecReduce_2  102# happyReduction_214
happyReduction_214 happy_x_2
	happy_x_1
	 =  happyIn114
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = Map.fromList [ (vid, cstrVar vid) | vid <- (inhStVarSigs happySelfAttrs) ] , synMaxUid = (inhNodeUid happySelfAttrs)  }; happyConditions = [] } in (happyConditions,happySelfAttrs)
	)

happyReduce_215 = happySpecReduce_1  102# happyReduction_215
happyReduction_215 happy_x_1
	 =  case happyOut115 happy_x_1 of { happy_var_1 -> 
	happyIn114
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = let id =Map.fromList [ (vid, cstrVar vid) | vid <- (inhStVarSigs happySelfAttrs) , vid `Map.notMember` (parseVal happySubAttrs_1) ] in (parseVal happySubAttrs_1) `Map.union` id , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhVarSigs = (inhVarSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhStVarSigs = (inhStVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_216 = happySpecReduce_3  102# happyReduction_216
happyReduction_216 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut115 happy_x_2 of { happy_var_2 -> 
	happyIn114
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = let id =Map.fromList [ (vid, cstrVar vid) | vid <- (inhStVarSigs happySelfAttrs) , vid `Map.notMember` (parseVal happySubAttrs_2) ] in (parseVal happySubAttrs_2) `Map.union` id , synMaxUid = (synMaxUid happySubAttrs_2)  }; (happyConditions_2,happySubAttrs_2) = happy_var_2 happyEmptyAttrs{ inhVarSigs = (inhVarSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhStVarSigs = (inhStVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_2 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_217 = happySpecReduce_1  103# happyReduction_217
happyReduction_217 happy_x_1
	 =  case happyOut116 happy_x_1 of { happy_var_1 -> 
	happyIn115
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) , synMaxUid = (synMaxUid happySubAttrs_1)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhVarSigs = (inhVarSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhStVarSigs = (inhStVarSigs happySelfAttrs)  }; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyReduce_218 = happySpecReduce_3  103# happyReduction_218
happyReduction_218 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut115 happy_x_1 of { happy_var_1 -> 
	case happyOut116 happy_x_3 of { happy_var_3 -> 
	happyIn115
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = (parseVal happySubAttrs_1) `Map.union` (parseVal happySubAttrs_3) , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs{ inhVarSigs = (inhVarSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhStVarSigs = (inhStVarSigs happySelfAttrs)  }; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhVarSigs = (inhVarSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (synMaxUid happySubAttrs_1) + 1 , inhStVarSigs = (inhStVarSigs happySelfAttrs)  }; happyConditions = [let dbls =(parseVal happySubAttrs_1) `Map.intersection` (parseVal happySubAttrs_3) in if Map.null dbls then () else error $ "\nTXS1121: " ++ "Double updated state variables : " ++ (show dbls) ++ "\n" ]++happyConditions_1++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_219 = happySpecReduce_3  104# happyReduction_219
happyReduction_219 happy_x_3
	happy_x_2
	happy_x_1
	 =  case happyOut103 happy_x_1 of { happy_var_1 -> 
	case happyOut85 happy_x_3 of { happy_var_3 -> 
	happyIn116
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = Map.fromList [ (vid, (parseVal happySubAttrs_3) ) | vid <- (synVarSigs happySelfAttrs) ] , synVarSigs = [ case [ vid | vid <- (inhStVarSigs happySelfAttrs) , VarId.name vid ==nm ] of { [stvid] -> stvid ; _ -> error $ "\nTXS1141: State variable not (unique)" ++ " in Update: " ++ (show nm) ++ "\n" } | nm <- (parseVal happySubAttrs_1) ] , synMaxUid = (synMaxUid happySubAttrs_3)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs; (happyConditions_3,happySubAttrs_3) = happy_var_3 happyEmptyAttrs{ inhVarSigs = (inhVarSigs happySelfAttrs) , inhSigs = (inhSigs happySelfAttrs) , inhNodeUid = (inhNodeUid happySelfAttrs) + 1 , inhSolvSort = case List.nub ( map varsort (synVarSigs happySelfAttrs) ) of { [srt] -> Just srt ; srts -> error $ "\nTXS1142: Sort of state variables not " ++ "unique in Update: " ++ (show srts) ++ "\n" }  }; happyConditions = [let dbls =doubles (parseVal happySubAttrs_1) in if null dbls then () else error $ "\nTXS1133: " ++ "Double updated state variables : " ++ (show dbls)++"\n" ]++happyConditions_1++happyConditions_3 } in (happyConditions,happySelfAttrs)
	)}}

happyReduce_220 = happySpecReduce_1  105# happyReduction_220
happyReduction_220 happy_x_1
	 =  case happyOut95 happy_x_1 of { happy_var_1 -> 
	happyIn117
		 (\happyInhAttrs -> let { happySelfAttrs = happyInhAttrs{ parseVal = case filter ( ( (parseVal happySubAttrs_1) ==) . StatId.name ) (inhStateSigs happySelfAttrs) of { [] -> error ("\nTXS1151: " ++ "State not defined: " ++ (show (parseVal happySubAttrs_1) )++"\n") ; [statid] -> statid ; (stid:stids) -> error ("\nTXS1152: " ++ "State not unique: " ++ (show (parseVal happySubAttrs_1) )++"\n") } , synMaxUid = (inhNodeUid happySelfAttrs)  }; (happyConditions_1,happySubAttrs_1) = happy_var_1 happyEmptyAttrs; happyConditions = []++happyConditions_1 } in (happyConditions,happySelfAttrs)
	)}

happyNewToken action sts stk [] =
	happyDoAction 94# notHappyAtAll action sts stk []

happyNewToken action sts stk (tk:tks) =
	let cont i = happyDoAction i tk action sts stk tks in
	case tk of {
	Ttypedef          pos -> cont 1#;
	Tfuncdef          pos -> cont 2#;
	Tconstdef         pos -> cont 3#;
	Tprocdef          pos -> cont 4#;
	Tchandef          pos -> cont 5#;
	Tstautdef         pos -> cont 6#;
	Tmodeldef         pos -> cont 7#;
	Tpurpdef          pos -> cont 8#;
	Tmapperdef        pos -> cont 9#;
	Tcnectdef         pos -> cont 10#;
	Tenddef           pos -> cont 11#;
	Tgoal             pos -> cont 12#;
	Tchan             pos -> cont 13#;
	Tin               pos -> cont 14#;
	Tout              pos -> cont 15#;
	Tsync             pos -> cont 16#;
	Tclientsock       pos -> cont 17#;
	Tserversock       pos -> cont 18#;
	Thost             pos -> cont 19#;
	Tport             pos -> cont 20#;
	Tencode           pos -> cont 21#;
	Tdecode           pos -> cont 22#;
	Tstate            pos -> cont 23#;
	Tvar              pos -> cont 24#;
	Tinit             pos -> cont 25#;
	Ttrans            pos -> cont 26#;
	Tfrom             pos -> cont 27#;
	Tvia              pos -> cont 28#;
	Tto               pos -> cont 29#;
	Tvalue            pos -> cont 30#;
	Tbehaviour        pos -> cont 31#;
	Tstop             pos -> cont 32#;
	Texit             pos -> cont 33#;
	Thit              pos -> cont 34#;
	Tmiss             pos -> cont 35#;
	Taccept           pos -> cont 36#;
	Thide             pos -> cont 37#;
	Tlet              pos -> cont 38#;
	Tni               pos -> cont 39#;
	Tbegin            pos -> cont 40#;
	Tend              pos -> cont 41#;
	Tif               pos -> cont 42#;
	Tthen             pos -> cont 43#;
	Telse             pos -> cont 44#;
	Tfi               pos -> cont 45#;
	Tistep            pos -> cont 46#;
	Tqstep            pos -> cont 47#;
	Terror            pos -> cont 48#;
	Tregex            pos -> cont 49#;
	Tbool             posbool True -> cont 50#;
	Tbool             posbool  False -> cont 51#;
	Tarrow            pos -> cont 52#;
	Tbarrow           pos -> cont 53#;
	Tchoice           pos -> cont 54#;
	Taltchoice        pos -> cont 55#;
	Tsynchronization  pos -> cont 56#;
	Tinterleaving     pos -> cont 57#;
	Tleftcommunicate  pos -> cont 58#;
	Trightcommunicate pos -> cont 59#;
	Tprefix           pos -> cont 60#;
	Tenable           pos -> cont 61#;
	Tdisable          pos -> cont 62#;
	Tinterrupt        pos -> cont 63#;
	Topenpred         pos -> cont 64#;
	Tclosepred        pos -> cont 65#;
	Topenlist         pos -> cont 66#;
	Tcloselist        pos -> cont 67#;
	Topenbrace        pos -> cont 68#;
	Tclosebrace       pos -> cont 69#;
	Topenpar          pos -> cont 70#;
	Tclosepar         pos -> cont 71#;
	Tsortof           pos -> cont 72#;
	Tisdef            pos -> cont 73#;
	Tassign           pos -> cont 74#;
	Tequal            pos -> cont 75#;
	Tguard            pos -> cont 76#;
	Tbar              pos -> cont 77#;
	Tquestion         pos -> cont 78#;
	Texclam           pos -> cont 79#;
	Tsharp            pos -> cont 80#;
	Tsemicolon        pos -> cont 81#;
	Tcomma            pos -> cont 82#;
	Tcapid            poscapid    happy_dollar_dollar -> cont 83#;
	Tsmallid          possmallid  happy_dollar_dollar -> cont 84#;
	Toperator         posoperator happy_dollar_dollar -> cont 85#;
	Tinteger          posinteger  happy_dollar_dollar -> cont 86#;
	Tstring           posstring   happy_dollar_dollar -> cont 87#;
	Tregexval         posregexval happy_dollar_dollar -> cont 88#;
	Ctdefs            happy_dollar_dollar -> cont 89#;
	Csigs             happy_dollar_dollar -> cont 90#;
	Cchanenv          happy_dollar_dollar -> cont 91#;
	Cvarenv           happy_dollar_dollar -> cont 92#;
	Cunid             happy_dollar_dollar -> cont 93#;
	_ -> happyError' (tk:tks)
	}

happyError_ 94# tk tks = happyError' tks
happyError_ _ tk tks = happyError' (tk:tks)

newtype HappyIdentity a = HappyIdentity a
happyIdentity = HappyIdentity
happyRunIdentity (HappyIdentity a) = a

instance Functor HappyIdentity where
    fmap f (HappyIdentity a) = HappyIdentity (f a)

instance Applicative HappyIdentity where
    pure  = return
    (<*>) = ap
instance Monad HappyIdentity where
    return = HappyIdentity
    (HappyIdentity p) >>= q = q p

happyThen :: () => HappyIdentity a -> (a -> HappyIdentity b) -> HappyIdentity b
happyThen = (>>=)
happyReturn :: () => a -> HappyIdentity a
happyReturn = (return)
happyThen1 m k tks = (>>=) m (\a -> k a tks)
happyReturn1 :: () => a -> b -> HappyIdentity a
happyReturn1 = \a tks -> (return) a
happyError' :: () => [(Token)] -> HappyIdentity a
happyError' = HappyIdentity . parseError

do_txsParser tks = happyRunIdentity happySomeParser where
  happySomeParser = happyThen (happyParse 0# tks) (\x -> happyReturn (happyOut15 x))

do_constdefParser tks = happyRunIdentity happySomeParser where
  happySomeParser = happyThen (happyParse 1# tks) (\x -> happyReturn (happyOut32 x))

do_funcdefParser tks = happyRunIdentity happySomeParser where
  happySomeParser = happyThen (happyParse 2# tks) (\x -> happyReturn (happyOut28 x))

do_bexprParser tks = happyRunIdentity happySomeParser where
  happySomeParser = happyThen (happyParse 3# tks) (\x -> happyReturn (happyOut68 x))

do_chandeclsParser tks = happyRunIdentity happySomeParser where
  happySomeParser = happyThen (happyParse 4# tks) (\x -> happyReturn (happyOut61 x))

do_prefoffsParser tks = happyRunIdentity happySomeParser where
  happySomeParser = happyThen (happyParse 5# tks) (\x -> happyReturn (happyOut77 x))

do_vexprParser tks = happyRunIdentity happySomeParser where
  happySomeParser = happyThen (happyParse 6# tks) (\x -> happyReturn (happyOut84 x))

do_vardeclsParser tks = happyRunIdentity happySomeParser where
  happySomeParser = happyThen (happyParse 7# tks) (\x -> happyReturn (happyOut64 x))

do_valdefsParser tks = happyRunIdentity happySomeParser where
  happySomeParser = happyThen (happyParse 8# tks) (\x -> happyReturn (happyOut91 x))

txsParser toks = let { f = do_txsParser toks; (conds,attrs) = f happyEmptyAttrs; x = foldr seq attrs conds; } in (parseVal x)

constdefParser toks = let { f = do_constdefParser toks; (conds,attrs) = f happyEmptyAttrs; x = foldr seq attrs conds; } in (parseVal x)

funcdefParser toks = let { f = do_funcdefParser toks; (conds,attrs) = f happyEmptyAttrs; x = foldr seq attrs conds; } in (parseVal x)

bexprParser toks = let { f = do_bexprParser toks; (conds,attrs) = f happyEmptyAttrs; x = foldr seq attrs conds; } in (parseVal x)

chandeclsParser toks = let { f = do_chandeclsParser toks; (conds,attrs) = f happyEmptyAttrs; x = foldr seq attrs conds; } in (parseVal x)

prefoffsParser toks = let { f = do_prefoffsParser toks; (conds,attrs) = f happyEmptyAttrs; x = foldr seq attrs conds; } in (parseVal x)

vexprParser toks = let { f = do_vexprParser toks; (conds,attrs) = f happyEmptyAttrs; x = foldr seq attrs conds; } in (parseVal x)

vardeclsParser toks = let { f = do_vardeclsParser toks; (conds,attrs) = f happyEmptyAttrs; x = foldr seq attrs conds; } in (parseVal x)

valdefsParser toks = let { f = do_valdefsParser toks; (conds,attrs) = f happyEmptyAttrs; x = foldr seq attrs conds; } in (parseVal x)

happySeq = happyDontSeq

data Attrs a v = HappyAttributes {parseVal :: a, inhNodeUid :: Int, synMaxUid :: Int, synSigs :: (Sigs.Sigs VarId), inhSigs :: (Sigs.Sigs VarId), inhDefgSort :: SortId, inhDefCstrId :: CstrId, synChanSigs :: [ ChanId ], inhChanSigs :: [ ChanId ], synVarSigs :: [ VarId ], inhVarSigs :: [ VarId ], synExpdSort :: [ SortId ], synExpdSorts :: [ [ SortId ] ], inhSolvSort :: Maybe SortId, inhSolvSorts :: [ Maybe SortId ], synExitSorts :: ExitSort, synStateSigs :: [ StatId ], inhStateSigs :: [ StatId ], synStVarSigs :: [ VarId ], inhStVarSigs :: [ VarId ]}
happyEmptyAttrs = HappyAttributes {parseVal = error "invalid reference to attribute 'parseVal'", inhNodeUid = error "invalid reference to attribute 'inhNodeUid'", synMaxUid = error "invalid reference to attribute 'synMaxUid'", synSigs = error "invalid reference to attribute 'synSigs'", inhSigs = error "invalid reference to attribute 'inhSigs'", inhDefgSort = error "invalid reference to attribute 'inhDefgSort'", inhDefCstrId = error "invalid reference to attribute 'inhDefCstrId'", synChanSigs = error "invalid reference to attribute 'synChanSigs'", inhChanSigs = error "invalid reference to attribute 'inhChanSigs'", synVarSigs = error "invalid reference to attribute 'synVarSigs'", inhVarSigs = error "invalid reference to attribute 'inhVarSigs'", synExpdSort = error "invalid reference to attribute 'synExpdSort'", synExpdSorts = error "invalid reference to attribute 'synExpdSorts'", inhSolvSort = error "invalid reference to attribute 'inhSolvSort'", inhSolvSorts = error "invalid reference to attribute 'inhSolvSorts'", synExitSorts = error "invalid reference to attribute 'synExitSorts'", synStateSigs = error "invalid reference to attribute 'synStateSigs'", inhStateSigs = error "invalid reference to attribute 'inhStateSigs'", synStVarSigs = error "invalid reference to attribute 'synStVarSigs'", inhStVarSigs = error "invalid reference to attribute 'inhStVarSigs'"}

-- ----------------------------------------------------------------------------------------- --
-- attribute functions


-- combine staut definition items
(+++) :: ([a],[b],[c],[d],[e]) -> ([a],[b],[c],[d],[e]) -> ([a],[b],[c],[d],[e])
(x1,y1,z1,u1,v1) +++ (x2,y2,z2,u2,v2) = ( x1++x2, y1++y2, z1++z2, u1++u2, v1++v2 )


-- combine exit sorts for choice, disable: max of exit sorts
(<<+>>) :: ExitSort -> ExitSort -> ExitSort
NoExit   <<+>> NoExit     =  NoExit
NoExit   <<+>> Exit exs   =  Exit exs
NoExit   <<+>> Hit        =  Hit
Exit exs <<+>> NoExit     =  Exit exs
Exit exs <<+>> Exit exs'  =  if  exs == exs'
                               then Exit exs
                               else error $ "\nTXS2222: Exit sorts do not match\n"
Exit exs <<+>> Hit        =  error $ "\nTXS2223: Exit sorts do not match\n"
Hit      <<+>> NoExit     =  Hit
Hit      <<+>> Exit exs   =  error $ "\nTXS2224: Exit sorts do not match\n"
Hit      <<+>> Hit        =  Hit


-- combine exit sorts for parallel: min of exit sorts
(<<->>) :: ExitSort -> ExitSort -> ExitSort
NoExit   <<->> NoExit     =  NoExit
NoExit   <<->> Exit exs   =  NoExit
NoExit   <<->> Hit        =  NoExit
Exit exs <<->> NoExit     =  NoExit
Exit exs <<->> Exit exs'  =  if  exs == exs'
                               then Exit exs
                               else error $ "\nTXS2225: Exit sorts do not match\n"
Exit exs <<->> Hit        =  error $ "\nTXS2226: Exit sorts do not match\n"
Hit      <<->> NoExit     =  NoExit
Hit      <<->> Exit exs   =  error $ "\nTXS2227: Exit sorts do not match\n"
Hit      <<->> Hit        =  Hit


-- ----------------------------------------------------------------------------------------- --
-- error handling

parseError :: [Token] -> a
parseError []      =  error $ "\nParse Error:  []"
parseError (t:tt)  =  error $ "\nParse Error:  " ++ (showToken t)

noerror = ()


showToken :: Token -> String
showToken t  =  case t of
                { Ttypedef          pos     ->  (showPos pos) ++ "  TYPEDEF"
                ; Tfuncdef          pos     ->  (showPos pos) ++ "  FUNCDEF"
                ; Tconstdef         pos     ->  (showPos pos) ++ "  CONSTDEF"
                ; Tprocdef          pos     ->  (showPos pos) ++ "  PROCDEF"
                ; Tstautdef         pos     ->  (showPos pos) ++ "  STAUTDEF"
                ; Tmodeldef         pos     ->  (showPos pos) ++ "  MODELDEF"
                ; Tcnectdef         pos     ->  (showPos pos) ++ "  CNECTDEF"
                ; Tenddef           pos     ->  (showPos pos) ++ "  ENDDEF"
                ; Tchan             pos     ->  (showPos pos) ++ "  CHAN"
                ; Tin               pos     ->  (showPos pos) ++ "  IN"
                ; Tout              pos     ->  (showPos pos) ++ "  OUT"
                ; Tsync             pos     ->  (showPos pos) ++ "  SYNC"
                ; Tclientsock       pos     ->  (showPos pos) ++ "  CLIENTSOCK"
                ; Tserversock       pos     ->  (showPos pos) ++ "  SERVERSOCK"
                ; Thost             pos     ->  (showPos pos) ++ "  HOST"
                ; Tport             pos     ->  (showPos pos) ++ "  PORT"
                ; Tencode           pos     ->  (showPos pos) ++ "  ENCODE"
                ; Tdecode           pos     ->  (showPos pos) ++ "  DECODE"
                ; Tstate            pos     ->  (showPos pos) ++ "  STATE"
                ; Tvar              pos     ->  (showPos pos) ++ "  VAR"
                ; Tinit             pos     ->  (showPos pos) ++ "  INIT"
                ; Ttrans            pos     ->  (showPos pos) ++ "  TRANS"
                ; Tfrom             pos     ->  (showPos pos) ++ "  FROM"
                ; Tvia              pos     ->  (showPos pos) ++ "  VIA"
                ; Tto               pos     ->  (showPos pos) ++ "  TO"
                ; Tvalue            pos     ->  (showPos pos) ++ "  VALUE"
                ; Tbehaviour        pos     ->  (showPos pos) ++ "  BEHAVIOUR"
                ; Tstop             pos     ->  (showPos pos) ++ "  STOP"
                ; Texit             pos     ->  (showPos pos) ++ "  EXIT"
                ; Taccept           pos     ->  (showPos pos) ++ "  ACCEPT"
                ; Thide             pos     ->  (showPos pos) ++ "  HIDE"
                ; Tlet              pos     ->  (showPos pos) ++ "  LET"
                ; Tni               pos     ->  (showPos pos) ++ "  NI"
                ; Tbegin            pos     ->  (showPos pos) ++ "  BEGIN"
                ; Tend              pos     ->  (showPos pos) ++ "  END"
                ; Tif               pos     ->  (showPos pos) ++ "  IF"
                ; Tthen             pos     ->  (showPos pos) ++ "  THEN"
                ; Telse             pos     ->  (showPos pos) ++ "  ELSE"
                ; Tfi               pos     ->  (showPos pos) ++ "  FI"
                ; Tistep            pos     ->  (showPos pos) ++ "  ISTEP"
                ; Terror            pos     ->  (showPos pos) ++ "  ERROR"
                ; Tregex            pos     ->  (showPos pos) ++ "  REGEX"
                ; Tarrow            pos     ->  (showPos pos) ++ "  '->'"
                ; Tbarrow           pos     ->  (showPos pos) ++ "  '<-'"
                ; Tchoice           pos     ->  (showPos pos) ++ "  '[]'"
                ; Taltchoice        pos     ->  (showPos pos) ++ "  '##'"
                ; Tsynchronization  pos     ->  (showPos pos) ++ "  '||'"
                ; Tinterleaving     pos     ->  (showPos pos) ++ "  '|||'"
                ; Tleftcommunicate  pos     ->  (showPos pos) ++ "  '|['"
                ; Trightcommunicate pos     ->  (showPos pos) ++ "  ']|'"
                ; Tprefix           pos     ->  (showPos pos) ++ "  '>->'"
                ; Tenable           pos     ->  (showPos pos) ++ "  '>>>'"
                ; Tdisable          pos     ->  (showPos pos) ++ "  '[>>'"
                ; Tinterrupt        pos     ->  (showPos pos) ++ "  '[><'"
                ; Topenpred         pos     ->  (showPos pos) ++ "  '[['"
                ; Tclosepred        pos     ->  (showPos pos) ++ "  ']]'"
                ; Topenlist         pos     ->  (showPos pos) ++ "  '['"
                ; Tcloselist        pos     ->  (showPos pos) ++ "  ']'"
                ; Topenbrace        pos     ->  (showPos pos) ++ "  '{'"
                ; Tclosebrace       pos     ->  (showPos pos) ++ "  '}'"
                ; Topenpar          pos     ->  (showPos pos) ++ "  '('"
                ; Tclosepar         pos     ->  (showPos pos) ++ "  ')'"
                ; Tsortof           pos     ->  (showPos pos) ++ "  '::'"
                ; Tisdef            pos     ->  (showPos pos) ++ "  '::='"
                ; Tassign           pos     ->  (showPos pos) ++ "  ':='"
                ; Tequal            pos     ->  (showPos pos) ++ "  '='"
                ; Tguard            pos     ->  (showPos pos) ++ "  '=>>'"
                ; Tbar              pos     ->  (showPos pos) ++ "  '|'"
                ; Tquestion         pos     ->  (showPos pos) ++ "  '?'"
                ; Texclam           pos     ->  (showPos pos) ++ "  '!'"
                ; Tsharp            pos     ->  (showPos pos) ++ "  '#'"
                ; Tsemicolon        pos     ->  (showPos pos) ++ "  ';'"
                ; Tcomma            pos     ->  (showPos pos) ++ "  ','"
                ; Tcapid            pos id  ->  (showPos pos) ++ "  " ++ (show id)
                ; Tsmallid          pos id  ->  (showPos pos) ++ "  " ++ (show id)
                ; Toperator         pos op  ->  (showPos pos) ++ "  " ++ (show op)
                ; Tinteger          pos n   ->  (showPos pos) ++ "  " ++ (show n)
                ; Tstring           pos s   ->  (showPos pos) ++ "  " ++ (show s)
                ; Tregexval         pos r   ->  (showPos pos) ++ "  " ++ (show r)
                ; Ctdefs            v       ->  "Ctdefs"
                ; Csigs             v       ->  "Csigs"
                ; Cchanenv          v       ->  "Cchanenv"
                ; Cvarenv           v       ->  "Cvarenv"
                ; Cunid             v       ->  "Cunid"
                }


showPos :: AlexPosn -> String
showPos (AlexPn a l c)  =  "( line = " ++ (show l) ++ ", column = " ++ (show c) ++ " )" 


-- ----------------------------------------------------------------------------------------- --
-- end uninterpreted haskell postamble
{-# LINE 1 "templates/GenericTemplate.hs" #-}
{-# LINE 1 "templates/GenericTemplate.hs" #-}
{-# LINE 1 "<built-in>" #-}
{-# LINE 1 "<command-line>" #-}
{-# LINE 11 "<command-line>" #-}
# 1 "/usr/include/stdc-predef.h" 1 3 4

# 17 "/usr/include/stdc-predef.h" 3 4










































{-# LINE 11 "<command-line>" #-}
{-# LINE 1 "/home/runner/TorXakis/.semaphore-cache/.stack/programs/x86_64-linux/ghc-8.0.2/lib/ghc-8.0.2/include/ghcversion.h" #-}

















{-# LINE 11 "<command-line>" #-}
{-# LINE 1 "/tmp/ghc10843_0/ghc_2.h" #-}






















































































































































{-# LINE 11 "<command-line>" #-}
{-# LINE 1 "templates/GenericTemplate.hs" #-}
-- Id: GenericTemplate.hs,v 1.26 2005/01/14 14:47:22 simonmar Exp 

{-# LINE 13 "templates/GenericTemplate.hs" #-}





-- Do not remove this comment. Required to fix CPP parsing when using GCC and a clang-compiled alex.
#if __GLASGOW_HASKELL__ > 706
#define LT(n,m) ((Happy_GHC_Exts.tagToEnum# (n Happy_GHC_Exts.<# m)) :: Bool)
#define GTE(n,m) ((Happy_GHC_Exts.tagToEnum# (n Happy_GHC_Exts.>=# m)) :: Bool)
#define EQ(n,m) ((Happy_GHC_Exts.tagToEnum# (n Happy_GHC_Exts.==# m)) :: Bool)
#else
#define LT(n,m) (n Happy_GHC_Exts.<# m)
#define GTE(n,m) (n Happy_GHC_Exts.>=# m)
#define EQ(n,m) (n Happy_GHC_Exts.==# m)
#endif
{-# LINE 46 "templates/GenericTemplate.hs" #-}


data Happy_IntList = HappyCons Happy_GHC_Exts.Int# Happy_IntList





{-# LINE 67 "templates/GenericTemplate.hs" #-}

{-# LINE 77 "templates/GenericTemplate.hs" #-}

{-# LINE 86 "templates/GenericTemplate.hs" #-}

infixr 9 `HappyStk`
data HappyStk a = HappyStk a (HappyStk a)

-----------------------------------------------------------------------------
-- starting the parse

happyParse start_state = happyNewToken start_state notHappyAtAll notHappyAtAll

-----------------------------------------------------------------------------
-- Accepting the parse

-- If the current token is 0#, it means we've just accepted a partial
-- parse (a %partial parser).  We must ignore the saved token on the top of
-- the stack in this case.
happyAccept 0# tk st sts (_ `HappyStk` ans `HappyStk` _) =
        happyReturn1 ans
happyAccept j tk st sts (HappyStk ans _) = 
        (happyTcHack j (happyTcHack st)) (happyReturn1 ans)

-----------------------------------------------------------------------------
-- Arrays only: do the next action



happyDoAction i tk st
        = {- nothing -}


          case action of
                0#           -> {- nothing -}
                                     happyFail i tk st
                -1#          -> {- nothing -}
                                     happyAccept i tk st
                n | LT(n,(0# :: Happy_GHC_Exts.Int#)) -> {- nothing -}

                                                   (happyReduceArr Happy_Data_Array.! rule) i tk st
                                                   where rule = (Happy_GHC_Exts.I# ((Happy_GHC_Exts.negateInt# ((n Happy_GHC_Exts.+# (1# :: Happy_GHC_Exts.Int#))))))
                n                 -> {- nothing -}


                                     happyShift new_state i tk st
                                     where new_state = (n Happy_GHC_Exts.-# (1# :: Happy_GHC_Exts.Int#))
   where off    = indexShortOffAddr happyActOffsets st
         off_i  = (off Happy_GHC_Exts.+# i)
         check  = if GTE(off_i,(0# :: Happy_GHC_Exts.Int#))
                  then EQ(indexShortOffAddr happyCheck off_i, i)
                  else False
         action
          | check     = indexShortOffAddr happyTable off_i
          | otherwise = indexShortOffAddr happyDefActions st


indexShortOffAddr (HappyA# arr) off =
        Happy_GHC_Exts.narrow16Int# i
  where
        i = Happy_GHC_Exts.word2Int# (Happy_GHC_Exts.or# (Happy_GHC_Exts.uncheckedShiftL# high 8#) low)
        high = Happy_GHC_Exts.int2Word# (Happy_GHC_Exts.ord# (Happy_GHC_Exts.indexCharOffAddr# arr (off' Happy_GHC_Exts.+# 1#)))
        low  = Happy_GHC_Exts.int2Word# (Happy_GHC_Exts.ord# (Happy_GHC_Exts.indexCharOffAddr# arr off'))
        off' = off Happy_GHC_Exts.*# 2#





data HappyAddr = HappyA# Happy_GHC_Exts.Addr#




-----------------------------------------------------------------------------
-- HappyState data type (not arrays)

{-# LINE 170 "templates/GenericTemplate.hs" #-}

-----------------------------------------------------------------------------
-- Shifting a token

happyShift new_state 0# tk st sts stk@(x `HappyStk` _) =
     let i = (case Happy_GHC_Exts.unsafeCoerce# x of { (Happy_GHC_Exts.I# (i)) -> i }) in
--     trace "shifting the error token" $
     happyDoAction i tk new_state (HappyCons (st) (sts)) (stk)

happyShift new_state i tk st sts stk =
     happyNewToken new_state (HappyCons (st) (sts)) ((happyInTok (tk))`HappyStk`stk)

-- happyReduce is specialised for the common cases.

happySpecReduce_0 i fn 0# tk st sts stk
     = happyFail 0# tk st sts stk
happySpecReduce_0 nt fn j tk st@((action)) sts stk
     = happyGoto nt j tk st (HappyCons (st) (sts)) (fn `HappyStk` stk)

happySpecReduce_1 i fn 0# tk st sts stk
     = happyFail 0# tk st sts stk
happySpecReduce_1 nt fn j tk _ sts@((HappyCons (st@(action)) (_))) (v1`HappyStk`stk')
     = let r = fn v1 in
       happySeq r (happyGoto nt j tk st sts (r `HappyStk` stk'))

happySpecReduce_2 i fn 0# tk st sts stk
     = happyFail 0# tk st sts stk
happySpecReduce_2 nt fn j tk _ (HappyCons (_) (sts@((HappyCons (st@(action)) (_))))) (v1`HappyStk`v2`HappyStk`stk')
     = let r = fn v1 v2 in
       happySeq r (happyGoto nt j tk st sts (r `HappyStk` stk'))

happySpecReduce_3 i fn 0# tk st sts stk
     = happyFail 0# tk st sts stk
happySpecReduce_3 nt fn j tk _ (HappyCons (_) ((HappyCons (_) (sts@((HappyCons (st@(action)) (_))))))) (v1`HappyStk`v2`HappyStk`v3`HappyStk`stk')
     = let r = fn v1 v2 v3 in
       happySeq r (happyGoto nt j tk st sts (r `HappyStk` stk'))

happyReduce k i fn 0# tk st sts stk
     = happyFail 0# tk st sts stk
happyReduce k nt fn j tk st sts stk
     = case happyDrop (k Happy_GHC_Exts.-# (1# :: Happy_GHC_Exts.Int#)) sts of
         sts1@((HappyCons (st1@(action)) (_))) ->
                let r = fn stk in  -- it doesn't hurt to always seq here...
                happyDoSeq r (happyGoto nt j tk st1 sts1 r)

happyMonadReduce k nt fn 0# tk st sts stk
     = happyFail 0# tk st sts stk
happyMonadReduce k nt fn j tk st sts stk =
      case happyDrop k (HappyCons (st) (sts)) of
        sts1@((HappyCons (st1@(action)) (_))) ->
          let drop_stk = happyDropStk k stk in
          happyThen1 (fn stk tk) (\r -> happyGoto nt j tk st1 sts1 (r `HappyStk` drop_stk))

happyMonad2Reduce k nt fn 0# tk st sts stk
     = happyFail 0# tk st sts stk
happyMonad2Reduce k nt fn j tk st sts stk =
      case happyDrop k (HappyCons (st) (sts)) of
        sts1@((HappyCons (st1@(action)) (_))) ->
         let drop_stk = happyDropStk k stk

             off = indexShortOffAddr happyGotoOffsets st1
             off_i = (off Happy_GHC_Exts.+# nt)
             new_state = indexShortOffAddr happyTable off_i



          in
          happyThen1 (fn stk tk) (\r -> happyNewToken new_state sts1 (r `HappyStk` drop_stk))

happyDrop 0# l = l
happyDrop n (HappyCons (_) (t)) = happyDrop (n Happy_GHC_Exts.-# (1# :: Happy_GHC_Exts.Int#)) t

happyDropStk 0# l = l
happyDropStk n (x `HappyStk` xs) = happyDropStk (n Happy_GHC_Exts.-# (1#::Happy_GHC_Exts.Int#)) xs

-----------------------------------------------------------------------------
-- Moving to a new state after a reduction


happyGoto nt j tk st = 
   {- nothing -}
   happyDoAction j tk new_state
   where off = indexShortOffAddr happyGotoOffsets st
         off_i = (off Happy_GHC_Exts.+# nt)
         new_state = indexShortOffAddr happyTable off_i




-----------------------------------------------------------------------------
-- Error recovery (0# is the error token)

-- parse error if we are in recovery and we fail again
happyFail 0# tk old_st _ stk@(x `HappyStk` _) =
     let i = (case Happy_GHC_Exts.unsafeCoerce# x of { (Happy_GHC_Exts.I# (i)) -> i }) in
--      trace "failing" $ 
        happyError_ i tk

{-  We don't need state discarding for our restricted implementation of
    "error".  In fact, it can cause some bogus parses, so I've disabled it
    for now --SDM

-- discard a state
happyFail  0# tk old_st (HappyCons ((action)) (sts)) 
                                                (saved_tok `HappyStk` _ `HappyStk` stk) =
--      trace ("discarding state, depth " ++ show (length stk))  $
        happyDoAction 0# tk action sts ((saved_tok`HappyStk`stk))
-}

-- Enter error recovery: generate an error token,
--                       save the old token and carry on.
happyFail  i tk (action) sts stk =
--      trace "entering error recovery" $
        happyDoAction 0# tk action sts ( (Happy_GHC_Exts.unsafeCoerce# (Happy_GHC_Exts.I# (i))) `HappyStk` stk)

-- Internal happy errors:

notHappyAtAll :: a
notHappyAtAll = error "Internal Happy error\n"

-----------------------------------------------------------------------------
-- Hack to get the typechecker to accept our action functions


happyTcHack :: Happy_GHC_Exts.Int# -> a -> a
happyTcHack x y = y
{-# INLINE happyTcHack #-}


-----------------------------------------------------------------------------
-- Seq-ing.  If the --strict flag is given, then Happy emits 
--      happySeq = happyDoSeq
-- otherwise it emits
--      happySeq = happyDontSeq

happyDoSeq, happyDontSeq :: a -> b -> b
happyDoSeq   a b = a `seq` b
happyDontSeq a b = b

-----------------------------------------------------------------------------
-- Don't inline any functions from the template.  GHC has a nasty habit
-- of deciding to inline happyGoto everywhere, which increases the size of
-- the generated parser quite a bit.


{-# NOINLINE happyDoAction #-}
{-# NOINLINE happyTable #-}
{-# NOINLINE happyCheck #-}
{-# NOINLINE happyActOffsets #-}
{-# NOINLINE happyGotoOffsets #-}
{-# NOINLINE happyDefActions #-}

{-# NOINLINE happyShift #-}
{-# NOINLINE happySpecReduce_0 #-}
{-# NOINLINE happySpecReduce_1 #-}
{-# NOINLINE happySpecReduce_2 #-}
{-# NOINLINE happySpecReduce_3 #-}
{-# NOINLINE happyReduce #-}
{-# NOINLINE happyMonadReduce #-}
{-# NOINLINE happyGoto #-}
{-# NOINLINE happyFail #-}

-- end of Happy Template.